aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorUlrich Drepper <drepper@redhat.com>2001-01-24 22:10:30 +0000
committerUlrich Drepper <drepper@redhat.com>2001-01-24 22:10:30 +0000
commitac259c27be2057cd323eb2113d213065a4517121 (patch)
tree28dac47ce86c166bd22608ff556f439ea2bc2f91
parent99f1b15bd12249169a0fc125fc6daab4f8c4f48b (diff)
downloadglibc-ac259c27be2057cd323eb2113d213065a4517121.zip
glibc-ac259c27be2057cd323eb2113d213065a4517121.tar.gz
glibc-ac259c27be2057cd323eb2113d213065a4517121.tar.bz2
(str_to_mpn): Correct parsing of thousands separators.
-rw-r--r--stdlib/strtod.c11
1 files changed, 6 insertions, 5 deletions
diff --git a/stdlib/strtod.c b/stdlib/strtod.c
index 62a4c99..f9ffa44 100644
--- a/stdlib/strtod.c
+++ b/stdlib/strtod.c
@@ -1,6 +1,6 @@
/* Read decimal floating point numbers.
This file is part of the GNU C Library.
- Copyright (C) 1995, 96, 97, 98, 99, 2000 Free Software Foundation, Inc.
+ Copyright (C) 1995,96,97,98,99,2000,2001 Free Software Foundation, Inc.
Contributed by Ulrich Drepper <drepper@gnu.org>, 1995.
The GNU C Library is free software; you can redistribute it and/or
@@ -349,12 +349,13 @@ str_to_mpn (const STRING_TYPE *str, int digcnt, mp_limb_t *n, mp_size_t *nsize,
#else
if (*str < '0' || *str > '9')
{
+ int inner = 0;
if (thousands != NULL && *str == *thousands
- && ({ for (cnt == 1; thousands[cnt] != '\0'; ++cnt)
- if (thousands[cnt] != str[cnt])
+ && ({ for (inner = 1; thousands[inner] != '\0'; ++inner)
+ if (thousands[inner] != str[inner])
break;
- thousands[cnt] == '\0'; }))
- str += cnt;
+ thousands[inner] == '\0'; }))
+ str += inner;
else
str += decimal_len;
}