summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog6
-rw-r--r--stdlib/strtod_l.c2
2 files changed, 7 insertions, 1 deletions
diff --git a/ChangeLog b/ChangeLog
index 0f84b8c171..3400be76ac 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,9 @@
+2006-12-09  Ulrich Drepper  <drepper@redhat.com>
+
+	[BZ #3674]
+	* stdlib/strtod_l.c (____STRTOF_INTERNAL): Adjust exponent value
+	correctly if removing trailing zero of hex-float.
+
 2006-12-09  Jakub Jelinek  <jakub@redhat.com>
 
 	* misc/mntent_r.c (__hasmntopt): Check p[optlen] even when p == rest.
diff --git a/stdlib/strtod_l.c b/stdlib/strtod_l.c
index e13f1086da..b9c2769224 100644
--- a/stdlib/strtod_l.c
+++ b/stdlib/strtod_l.c
@@ -888,7 +888,7 @@ ____STRTOF_INTERNAL (nptr, endptr, group, loc)
 	--expp;
 	--dig_no;
 	--int_no;
-	++exponent;
+	exponent += base == 16 ? 4 : 1;
       }
     while (dig_no > 0 && exponent < 0);