Don't use log_01[] in my_strtod() to avoid loss of precision.
This is for bug #28121. strings/strtod.c: Don't use log_01[] in my_strtod() to avoid loss of precision.
This commit is contained in:
parent
088cb9ddc4
commit
eab7e4d4e4
@ -244,8 +244,8 @@ double my_strtod(const char *str, char **end_ptr, int *error)
|
||||
else
|
||||
step= array_elements(log_10) - 1;
|
||||
for (; exponent > step; exponent-= step)
|
||||
result*= neg_exp ? log_01[step] : log_10[step];
|
||||
result*= neg_exp ? log_01[exponent] : log_10[exponent];
|
||||
result= neg_exp ? result / log_10[step] : result * log_10[step];
|
||||
result= neg_exp ? result / log_10[exponent] : result * log_10[exponent];
|
||||
}
|
||||
|
||||
done:
|
||||
|
Loading…
x
Reference in New Issue
Block a user