From 57e91b4159082b8cbda54e38c80117a954af154a Mon Sep 17 00:00:00 2001 From: Roberto Ierusalimschy Date: Thu, 11 Dec 2014 12:03:07 -0200 Subject: [PATCH] correct computation for limit in 'getnum' --- lstrlib.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/lstrlib.c b/lstrlib.c index 786016b4..7eb62f37 100644 --- a/lstrlib.c +++ b/lstrlib.c @@ -1,5 +1,5 @@ /* -** $Id: lstrlib.c,v 1.219 2014/12/10 11:36:03 roberto Exp roberto $ +** $Id: lstrlib.c,v 1.220 2014/12/11 13:40:40 roberto Exp roberto $ ** Standard library for string operations and pattern-matching ** See Copyright Notice in lua.h */ @@ -1034,8 +1034,8 @@ static int getnum (const char **fmt, int df) { else { int a = 0; do { - a = a*10 + *((*fmt)++) - '0'; - } while (digit(**fmt) && a < ((int)MAXSIZE/10 - 10)); + a = a*10 + (*((*fmt)++) - '0'); + } while (digit(**fmt) && a <= ((int)MAXSIZE - 9)/10); return a; } }