Commit Graph

1248 Commits

Author SHA1 Message Date
Zoltán Herczeg 3b2fa4dff2 Improve first character search in JIT (BSF instruction is slow). 2019-06-18 08:29:43 +00:00
Philip.Hazel 1ebc2c50cc Another extension to minimum length calculation. 2019-06-17 16:26:44 +00:00
Philip.Hazel ead78198d1 Improve minimum length finder in the presence of back references when there are
multiple groups with the same number.
2019-06-16 15:37:45 +00:00
Philip.Hazel 0d1ab8515f Fix pcre2grep -o bug when ovector overflows; add option to adjust the limit;
raise the default limit; give error if -o requests an uncaptured parens.
2019-06-15 15:51:07 +00:00
Philip.Hazel 300bf6e2d6 Another fix to the recent (*ACCEPT) patch. Fixes clusterfuzz 15242. 2019-06-14 15:44:57 +00:00
Philip.Hazel 49f174ef78 Make pcre2_match() return (*MARK) names from successful conditional assertions,
as Perl and the JIT do.
2019-06-13 16:49:40 +00:00
Philip.Hazel 1f6b9097f4 Minor improvement to minimum length calculation. 2019-06-13 16:00:11 +00:00
Philip.Hazel f0c06ee212 Fix minor oversight in previous patch. Fixes clusterfuzz 15199. 2019-06-11 07:37:29 +00:00
Philip.Hazel 306f2b9c57 Allow (*ACCEPT) to be quantified. 2019-06-10 16:41:22 +00:00
Zoltán Herczeg cc51779d88 Improve single character iterators, add special path to dotall. 2019-06-07 13:48:59 +00:00
Philip.Hazel dea540877b Documentation update. 2019-06-03 16:39:20 +00:00
Philip.Hazel 16d47a9cb1 Documentation update. 2019-05-30 15:43:05 +00:00
Philip.Hazel d5dc4e0c33 Tweak limits on "must have" code unit searches (improves some performance). 2019-05-28 16:34:28 +00:00
Philip.Hazel 4f31de2866 Add support for invalid UTF-8 matching to pcre2grep. 2019-05-28 14:14:22 +00:00
Philip.Hazel 5850cc5928 Fix previous patch for non-JIT compilation. 2019-05-25 16:31:38 +00:00
Philip.Hazel 16c046ce50 Implement support for invalid UTF in the pcre2_match() interpreter. 2019-05-24 17:15:48 +00:00
Zoltán Herczeg 2ad4329f83 Rework word boundary in JIT. 2019-05-23 07:46:10 +00:00
Philip.Hazel 342c16ecd3 Forgot this file in previous commit. Fixes JIT non-UTF bug. 2019-05-13 16:38:18 +00:00
Philip.Hazel e118e60a68 Fix crash when \X is used without UTF in JIT. 2019-05-13 16:26:17 +00:00
Philip.Hazel a31c548210 Fix typo. 2019-05-11 11:43:39 +00:00
Zoltán Herczeg 274efb8ded Improved the invalid utf32 support of the JIT compiler. 2019-05-10 13:15:20 +00:00
Philip.Hazel 16de9003e5 Implement a check on the number of capturing parentheses, which for some reason
has never existed. This fixes ClusterFuzz issue 14376.
2019-04-22 12:39:38 +00:00
Philip.Hazel 4e4f273f07 Final file tidies for 10.33. 2019-04-16 15:34:27 +00:00
Philip.Hazel 4acee004ec Casts and rewrites to avoid clang sanitize warnings. 2019-04-16 14:49:07 +00:00
Zoltán Herczeg e17e54711b Negate signed shift warnings. 2019-04-16 08:57:10 +00:00
Philip.Hazel 95c9d011e3 Change a number of expressions like 1<<10 to 1u<<10. 2019-04-12 14:40:27 +00:00
Zoltán Herczeg 590bc16842 Disable SSE2 JIT optimizations in x86 CPUs when SSE2 is not available. 2019-03-25 14:10:24 +00:00
Philip.Hazel e85de98d0a Fix crash in pcre2_substitute() with NULL match context. 2019-03-11 17:29:08 +00:00
Philip.Hazel 590f65f061 Documentation update re PCRE2_JIT_INVALID_UTF 2019-03-06 17:38:20 +00:00
Philip.Hazel 7375089fa5 More file tidies for 10.33-RC1 2019-03-04 18:07:04 +00:00
Philip.Hazel 02ff543f9c Final file tidies for 10.33-RC1 2019-03-04 18:04:44 +00:00
Philip.Hazel 473d8f95d7 Fix --enable-jit=auto for out-of-tree builds. 2019-03-01 16:19:49 +00:00
Philip.Hazel 4fd8932e83 Try to fix CMake old policy warning issue. 2019-02-16 11:58:37 +00:00
Philip.Hazel 740a9792dd Fix two identical documentation typos. 2019-02-14 16:07:14 +00:00
Zoltán Herczeg 4bb683e3ea JIT compiler update. 2019-02-14 07:49:03 +00:00
Zoltán Herczeg 1b95f98f95 Compile invalid UTF check in JIT test when only pcre32 is enabled. 2019-02-14 07:33:57 +00:00
Philip.Hazel 255f5e741b Compile \p{Any} the same as . in DOTALL mode, to benefit from auto-anchoring. 2019-02-13 17:30:24 +00:00
Philip.Hazel f2e1cea288 Fix overflow bug in new /u code. Fixes ClusterFuzz 13073. 2019-02-13 16:48:30 +00:00
Philip.Hazel 8c8deae8eb Implement PCRE2_EXTRA_ALT_BSUX to support ECMAscript 6's \u{hhh..} syntax. 2019-02-12 17:50:19 +00:00
Philip.Hazel d90de8b053 Previout bug-fix was bad. This properly fixes an overrun while reading a
Unicode group name.
2019-02-07 17:59:37 +00:00
Philip.Hazel 45959f1eec Fix small bug in new Unicode group name logic. 2019-02-07 17:29:50 +00:00
Philip.Hazel 4d17f4b856 JIT tests for script runs must only run when Unicode is supported. 2019-02-06 19:02:23 +00:00
Philip.Hazel d7b10a57d1 Allow non-ASCII in group names when UTF is set; revise group naming terminology
in documentation to use "capture group", as Perl does.
2019-02-06 18:11:36 +00:00
Philip.Hazel a657d4cff8 Fix warning when compiled without Unicode support. 2019-02-03 14:49:39 +00:00
Philip.Hazel ae913fbee7 Update POSIX wrapper to use macros in the .h file, but also have the POSIX
function names in the library.
2019-01-30 16:11:16 +00:00
Philip.Hazel 51fb3956ee Update copyright date 2019-01-30 16:10:38 +00:00
Philip.Hazel 86349f8814 Fix bug in VERSION conditional test in DFA matching. 2019-01-29 14:34:59 +00:00
Zoltán Herczeg f33fc9b85c JIT compiler update. 2019-01-22 08:51:48 +00:00
Zoltán Herczeg 9b1c7e4d4a Add preliminary script run support to JIT. 2019-01-18 14:14:19 +00:00
Zoltán Herczeg d38c7f7e8d Fix word boundary in JIT compiler. Patch by Mike Munday. 2019-01-17 11:47:59 +00:00