ref: 59ba35a327d9b5a2f08bc877cb18bf6c6f942b8c
parent: 5aabf85d7cc3d0bd457b9b67696737411681cc8d
author: cinap_lenrek <cinap_lenrek@felloff.net>
date: Sat Feb 18 19:32:47 EST 2017
libregexp: fix assert check for compile1 instruction count the assert fails for regcompnl(".") as TANY is compiled to one instruction instead of two when nl == 0. its not a problem when we end up with less instructions, so changing the assert condition from == to <= to make sure we didnt overrun the buffer. -- cinap
--- a/sys/src/libregexp/regcomp.c
+++ b/sys/src/libregexp/regcomp.c
@@ -299,7 +299,7 @@
sub = 0;
reinst = (Reinst*)(reprog+1);
end = compile1(parsetr, reinst, &sub, nl);
- assert(reinst + reprog->len == end);
+ assert(end <= reinst + reprog->len);
return reinst;
}