summaryrefslogtreecommitdiffstats
path: root/mdk-stage1/dietlibc/lib/strtod.c
diff options
context:
space:
mode:
authorGuillaume Cottenceau <gc@mandriva.com>2001-05-14 14:19:32 +0000
committerGuillaume Cottenceau <gc@mandriva.com>2001-05-14 14:19:32 +0000
commit167217bec15c9c7aa70ba2a3dc9c689b3cd91872 (patch)
tree7c0c62debf8f9f145643102fb52b81afce743594 /mdk-stage1/dietlibc/lib/strtod.c
parent9097327dc1c667fc51b8e05cc7c0626fac96665d (diff)
downloaddrakx-backup-do-not-use-167217bec15c9c7aa70ba2a3dc9c689b3cd91872.tar
drakx-backup-do-not-use-167217bec15c9c7aa70ba2a3dc9c689b3cd91872.tar.gz
drakx-backup-do-not-use-167217bec15c9c7aa70ba2a3dc9c689b3cd91872.tar.bz2
drakx-backup-do-not-use-167217bec15c9c7aa70ba2a3dc9c689b3cd91872.tar.xz
drakx-backup-do-not-use-167217bec15c9c7aa70ba2a3dc9c689b3cd91872.zip
import new version of dietlibc
Diffstat (limited to 'mdk-stage1/dietlibc/lib/strtod.c')
-rw-r--r--mdk-stage1/dietlibc/lib/strtod.c8
1 files changed, 4 insertions, 4 deletions
diff --git a/mdk-stage1/dietlibc/lib/strtod.c b/mdk-stage1/dietlibc/lib/strtod.c
index 767be679f..cbe983d84 100644
--- a/mdk-stage1/dietlibc/lib/strtod.c
+++ b/mdk-stage1/dietlibc/lib/strtod.c
@@ -29,10 +29,10 @@ double strtod(const char *nptr, char **endptr) {
}
if ((*c|32)=='e') {
int exp=0;
- char neg=0;
+ double factor=10;
if (c[1]<'0') {
- switch (*c) {
- case '-': neg=1;
+ switch (c[1]) {
+ case '-': factor=0.1;
case '+': c++; break;
default:
d=0;
@@ -43,7 +43,7 @@ double strtod(const char *nptr, char **endptr) {
while (isdigit(*++c))
exp=exp*10+(*c-'0');
while (exp) { /* XXX: this introduces rounding errors */
- d*=10; --exp;
+ d*=factor; --exp;
}
}
done: