Fixed an issue when \p{Any} inside an xclass did not read the current character.

This commit is contained in:
Zoltán Herczeg 2015-08-05 09:04:01 +00:00
parent b89a448d8d
commit 4003ae5911
4 changed files with 12 additions and 3 deletions

View File

@ -102,6 +102,9 @@ be computed.
(?(R<digits>). This omission was discovered by Karl Skomski with the LLVM
fuzzer.
27. Fixed an issue when \p{Any} inside an xclass did not read the current
character.
Version 10.20 30-June-2015
--------------------------

View File

@ -4970,9 +4970,8 @@ while (*cc != XCL_END)
/* Any either accepts everything or ignored. */
if (cc[-1] == XCL_PROP)
{
if (list != backtracks)
compile_char1_matchingpath(common, OP_ALLANY, cc, backtracks, FALSE);
else
compile_char1_matchingpath(common, OP_ALLANY, cc, backtracks, FALSE);
if (list == backtracks)
add_jump(compiler, backtracks, JUMP(SLJIT_JUMP));
return;
}

3
testdata/testinput4 vendored
View File

@ -2221,4 +2221,7 @@
"[\S\V\H]"utf
/[^\p{Any}]*+x/utf
x
# End of testinput4

View File

@ -3741,4 +3741,8 @@ No match
"[\S\V\H]"utf
/[^\p{Any}]*+x/utf
x
0: x
# End of testinput4