tcmd/yacc: do not create an out of bounds pointer - plan9port - [fork] Plan 9 f… | |
git clone git://src.adamsgaard.dk/plan9port | |
Log | |
Files | |
Refs | |
README | |
LICENSE | |
--- | |
commit 4a3f20bceee7cef125f9a88bab32439f9fe4f773 | |
parent 7ba9f9467d95fa8d05bb04d36fd4c602e497f529 | |
Author: Neven Sajko <[email protected]> | |
Date: Thu, 22 Aug 2019 11:28:53 +0000 | |
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 | |
Diffstat: | |
M src/cmd/yacc.c | 3 ++- | |
1 file changed, 2 insertions(+), 1 deletion(-) | |
--- | |
diff --git a/src/cmd/yacc.c b/src/cmd/yacc.c | |
t@@ -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 |