Revision: 335
http://www.exim.org/viewvc/pcre2?view=rev&revision=335
Author: zherczeg
Date: 2015-08-05 10:04:01 +0100 (Wed, 05 Aug 2015)
Log Message:
-----------
Fixed an issue when \p{Any} inside an xclass did not read the current character.
Modified Paths:
--------------
code/trunk/ChangeLog
code/trunk/src/pcre2_jit_compile.c
code/trunk/testdata/testinput4
code/trunk/testdata/testoutput4
Modified: code/trunk/ChangeLog
===================================================================
--- code/trunk/ChangeLog 2015-08-04 09:13:11 UTC (rev 334)
+++ code/trunk/ChangeLog 2015-08-05 09:04:01 UTC (rev 335)
@@ -102,7 +102,10 @@
(?(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
--------------------------
Modified: code/trunk/src/pcre2_jit_compile.c
===================================================================
--- code/trunk/src/pcre2_jit_compile.c 2015-08-04 09:13:11 UTC (rev 334)
+++ code/trunk/src/pcre2_jit_compile.c 2015-08-05 09:04:01 UTC (rev 335)
@@ -4970,9 +4970,8 @@
/* 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;
}
Modified: code/trunk/testdata/testinput4
===================================================================
--- code/trunk/testdata/testinput4 2015-08-04 09:13:11 UTC (rev 334)
+++ code/trunk/testdata/testinput4 2015-08-05 09:04:01 UTC (rev 335)
@@ -2221,4 +2221,7 @@
"[\S\V\H]"utf
+/[^\p{Any}]*+x/utf
+ x
+
# End of testinput4
Modified: code/trunk/testdata/testoutput4
===================================================================
--- code/trunk/testdata/testoutput4 2015-08-04 09:13:11 UTC (rev 334)
+++ code/trunk/testdata/testoutput4 2015-08-05 09:04:01 UTC (rev 335)
@@ -3741,4 +3741,8 @@
"[\S\V\H]"utf
+/[^\p{Any}]*+x/utf
+ x
+ 0: x
+
# End of testinput4