From 4a3f20bceee7cef125f9a88bab32439f9fe4f773 Mon Sep 17 00:00:00 2001 From: Neven Sajko Date: Thu, 22 Aug 2019 11:28:53 +0000 Subject: cmd/yacc: do not create an out of bounds pointer An out of bounds pointer/array index being created is an error in standard C. Updates #313 Change-Id: I7108fcde1a8e03017e9ab852adb737940489c827 --- src/cmd/yacc.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'src/cmd/yacc.c') diff --git a/src/cmd/yacc.c b/src/cmd/yacc.c index 32990f62..5db36d04 100644 --- a/src/cmd/yacc.c +++ b/src/cmd/yacc.c @@ -2819,8 +2819,9 @@ stin(int i) for(n = -maxoff; n < ACTSIZE; n++) { flag = 0; for(r = q1; r < q2; r += 2) { - if((s = *r + n + amem) < amem) + if(*r + n < 0) goto nextn; + s = *r + n + amem; if(*s == 0) flag++; else -- cgit v1.2.3