Fix minor oversight in previous patch. Fixes clusterfuzz 15199.

This commit is contained in:
Philip.Hazel 2019-06-11 07:37:29 +00:00
parent 306f2b9c57
commit f0c06ee212
3 changed files with 14 additions and 6 deletions

View File

@ -2681,8 +2681,11 @@ while (ptr < ptrend)
switch(escape) switch(escape)
{ {
case 0: case 0: /* Don't use PARSED_LITERAL() because it */
PARSED_LITERAL(c, parsed_pattern); #if PCRE2_CODE_UNIT_WIDTH == 32 /* sets okquantifier. */
if (c >= META_END) *parsed_pattern++ = META_BIGVALUE;
#endif
*parsed_pattern++ = c;
break; break;
case ESC_Q: case ESC_Q:

2
testdata/testinput2 vendored
View File

@ -5603,4 +5603,6 @@ a)"xI
abc abc
axy axy
/(*:\)?/
# End of testinput2 # End of testinput2

View File

@ -16959,6 +16959,9 @@ Failed: error 197 at offset 131075: too many capturing groups (maximum 65535)
0: a 0: a
MK: XX MK: XX
/(*:\)?/
Failed: error 109 at offset 5: quantifier does not follow a repeatable item
# End of testinput2 # End of testinput2
Error -70: PCRE2_ERROR_BADDATA (unknown error number) Error -70: PCRE2_ERROR_BADDATA (unknown error number)
Error -62: bad serialized data Error -62: bad serialized data