diff options
author | ocean <ocean@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2004-05-14 03:17:50 +0000 |
---|---|---|
committer | ocean <ocean@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2004-05-14 03:17:50 +0000 |
commit | 0a3d13ba9888f8e51444fe241b0d40183a4dbcab (patch) | |
tree | 00c390ea402d550fae57dd0c95eed01f3248b076 /util.c | |
parent | 3c103830d71d539f730fdcfbf71f13e5c876a0c2 (diff) |
* util.c (ruby_strtod): strtod("0", &end); => end should point '\0'.
[ruby-dev:23498]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@6306 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'util.c')
-rw-r--r-- | util.c | 14 |
1 files changed, 6 insertions, 8 deletions
@@ -772,8 +772,8 @@ ruby_strtod(string, endPtr) } /* - * Count the number of digits in the mantissa (including the decimal - * point), and also locate the decimal point. + * Count the number of digits in the mantissa + * and also locate the decimal point. */ for ( ; c = *p; p += 1) { @@ -805,16 +805,14 @@ ruby_strtod(string, endPtr) */ pExp = p; - p = pMant; /* valid if mantSize > 0 */ + if (mantSize) { + p = pMant; + } if (mantSize > 18) { fracExp += (mantSize - 18); mantSize = 18; } - if (mantSize == 0) { - fraction = 0.0; - p = string; - } - else { + { int frac1, frac2; frac1 = 0; for ( ; mantSize > 9; mantSize -= 1) { |