correctly parse floats in scientific notation
GDScript incorrectly parsed float values in scientific notation
when no decimal point was given. "1e-5" was parsed as "15".
Fix this by not requiring a decimal point when we found an exponent
for the number to be considered a float.
Fixes #5267
(cherry picked from commit c246931f03
)
This commit is contained in:
parent
8df46cddcb
commit
a04a78c7f6
|
@ -725,7 +725,7 @@ void GDTokenizerText::_advance() {
|
|||
if (hexa_found) {
|
||||
int val = str.hex_to_int();
|
||||
_make_constant(val);
|
||||
} else if (period_found) {
|
||||
} else if (period_found || exponent_found) {
|
||||
real_t val = str.to_double();
|
||||
//print_line("*%*%*%*% to convert: "+str+" result: "+rtos(val));
|
||||
_make_constant(val);
|
||||
|
|
Loading…
Reference in New Issue