plan9port

fork of plan9port with libvec, libstr and libsdb
Log | Files | Refs | README | LICENSE

commit 4a3f20bceee7cef125f9a88bab32439f9fe4f773
parent 7ba9f9467d95fa8d05bb04d36fd4c602e497f529
Author: Neven Sajko <nsajko@gmail.com>
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:
Msrc/cmd/yacc.c | 3++-
1 file changed, 2 insertions(+), 1 deletion(-)

diff --git 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