From 9604fbf0722bd97ca6031a263c50ad52b6633db7 Mon Sep 17 00:00:00 2001 From: Tony Cook Date: Wed, 14 Jun 2017 09:42:31 +1000 Subject: [PATCH] (perl #131526) don't go beyond the end of the NUL in my_atof2 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Perl_my_atof2() calls GROK_NUMERIC_RADIX() to detect and skip past a decimal point and then can increment the parse pointer (s) before checking what it points at, so skipping the terminating NUL if the decimal point is immediately before the NUL. Signed-off-by: Petr Písař --- numeric.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/numeric.c b/numeric.c index 6ea6968..5771907 100644 --- a/numeric.c +++ b/numeric.c @@ -1485,9 +1485,9 @@ Perl_my_atof2(pTHX_ const char* orig, NV* value) else if (!seen_dp && GROK_NUMERIC_RADIX(&s, send)) { seen_dp = 1; if (sig_digits > MAX_SIG_DIGITS) { - do { + while (isDIGIT(*s)) { ++s; - } while (isDIGIT(*s)); + } break; } } -- 2.9.4