Commit Graph

578 Commits

Author SHA1 Message Date
zherczeg
7ebb4af588 Fix control verb chain restoration issue in JIT. 2020-02-10 10:18:01 +00:00
ph10
c9d228afb3 Limit function recursion in pcre2_study to avoid stack overflow issues. 2020-01-27 10:28:19 +00:00
ph10
b384020170 Fix bug in processing (?(DEFINE)...) within lookbehind assertions. 2020-01-26 15:31:27 +00:00
ph10
8df4984cf6 Ensure a newline after the final line in a file is output by pcre2grep. 2020-01-25 15:50:44 +00:00
zherczeg
378a01dfbb The JIT stack should be freed when the low-level stack allocation fails. 2020-01-24 08:28:23 +00:00
ph10
88bdbf39df Implement PCRE2_SUBSTITUTE_REPLACEMENT_ONLY. 2020-01-22 17:50:12 +00:00
zherczeg
46f3237502 Fix *THEN verbs in lookahead assertions in JIT. 2020-01-11 15:28:15 +00:00
ph10
7ce7d95137 Allow real repetition of assertions. 2020-01-01 12:07:02 +00:00
ph10
00e81b4a53 Add (?* and (?<* synonyms for non-atomic lookarounds. 2019-12-28 13:53:59 +00:00
ph10
a8d32f9c02 Implement PCRE2_SUBSTITUTE_MATCHED. 2019-12-27 13:35:17 +00:00
ph10
ecffaeebd7 Avoid some VS compiler warnings. 2019-12-26 15:10:26 +00:00
ph10
c5fb61b37d Implement PCRE2_SUBSTITUTE_LITERAL. 2019-12-26 14:53:24 +00:00
ph10
240e5d6e83 Remove atomic restriction on capture groups containing recursive back
references, as since 10.30 it has been unnecessary.
2019-12-18 16:16:12 +00:00
zherczeg
01653df312 Fix the too early access of the fields of a compiled pattern in JIT. 2019-12-07 16:00:53 +00:00
zherczeg
1b1c5f8f86 Fix ARMv5 JIT improper handling of labels right after a constant pool. 2019-11-29 11:03:10 +00:00
zherczeg
30e7a803f5 Use PCRE2_MATCH_EMPTY flag to detect empty matches in JIT. 2019-11-28 11:35:08 +00:00
ph10
aa210712dc Final file tidies for 10.34 2019-11-21 16:31:08 +00:00
zherczeg
2d9aabd6b1 Fixed the incorrect computation of jump sizes on x86 CPUs in JIT. 2019-11-19 12:25:32 +00:00
ph10
ccd16426b5 Fix sometimes failing caseless non-ASCII matching in assertion. 2019-11-16 17:30:07 +00:00
ph10
160f6da85b Documentation update 2019-11-08 16:04:43 +00:00
ph10
bc876fd379 File tidies for 10.34-RC2. 2019-11-06 16:51:31 +00:00
ph10
4c00e57983 Source tidies (trailing spaces) etc. for 10.34-RC1. 2019-10-17 16:39:38 +00:00
ph10
aad727c420 Fix minor test issues and tidies/updates for 10.34-RC1 testing release. 2019-10-15 15:23:31 +00:00
ph10
7d9f2966d7 Ensure regexec is thread safe to avoid sanitizer warnings. 2019-10-15 10:46:36 +00:00
ph10
131f75bafd Optimize certain starting code unit bit maps into a single starting code unit. 2019-09-13 17:02:06 +00:00
ph10
5314e962ae Improve starting-byte bit map for UTF-8 patterns with wide characters in
classes.
2019-09-10 15:38:42 +00:00
ph10
ff953b4f20 Optimize classes such as [Aa] to be a single caseless character. 2019-09-09 17:00:19 +00:00
zherczeg
c9e6293f49 Add underflow check in JIT. 2019-09-09 07:12:00 +00:00
ph10
0e0e9315c4 Install .gitignore file to help those using svn via git. 2019-09-07 15:27:05 +00:00
ph10
01b4082ec6 When computing minimum length, don't scan subsequent branches if any branch in
a group has zero minimum length.
2019-09-07 15:16:10 +00:00
ph10
d16a3a3c8a Fix pessimizing optimization of start-of-match code units in the interpreters. 2019-09-06 16:08:45 +00:00
ph10
964fd5f142 Back off failed attempt to handle nested lookbehinds for estimating how much of
a partial match to retain for multi-segment matching. Document the current 
difficulty if the whole first segment cannot be retained.
2019-09-04 18:14:54 +00:00
ph10
6f74eeca4d Add the pcre2_maketables_free() function. 2019-09-03 14:16:07 +00:00
ph10
7df8394d62 Fix allusedtext bug, rightmost consulted character incorrect in negative
lookaheads.
2019-08-10 11:34:50 +00:00
ph10
f2fa9d8b14 Fix incorrect computation of group length when one branch exceeded 65535. 2019-08-03 08:30:40 +00:00
ph10
9020e977ea Minor upgrade to pcre2test and comment in ucptest. 2019-07-30 17:59:42 +00:00
ph10
d5702f9917 Upgrade to Unicode 12.1.0 2019-07-29 15:32:36 +00:00
ph10
d2334db3e4 Correct tables argument data type for pcre2_set_character_tables() and fix
documentation for pcre2_maketables().
2019-07-28 15:58:24 +00:00
ph10
3dce3f0dbb (*ACCEPT) at start of branch was not recording "may match empty string". 2019-07-23 16:58:57 +00:00
ph10
f1174f1f79 More partial match tweaks. 2019-07-22 16:30:44 +00:00
ph10
523758cea2 Update definition of partial match and fix \z and \Z (as documented). 2019-07-21 16:48:13 +00:00
ph10
03e7f4b837 Implemented pcre2_get_match_data_size(). 2019-07-16 15:50:09 +00:00
ph10
49d86ff772 Fix lookbehind within lookahead within lookbehind misbehaviour bug. 2019-07-16 15:06:21 +00:00
ph10
98226a5dd2 Implement non-atomic positive assertions. 2019-07-13 11:12:03 +00:00
ph10
f6611018d0 Check for integer overflow when computing lookbehind lengths. Fixes Clusterfuzz
issue 13656.
2019-07-04 17:01:53 +00:00
ph10
8d22c2be34 Give error for zero timing argument to pcre2test. 2019-07-03 17:15:37 +00:00
ph10
a5accce979 Fix partial matching bug in pcre2_dfa_match(). 2019-06-26 16:13:28 +00:00
ph10
a65849e909 Make pcre2test show actual pre-match consulted characters for a partial match,
not the length of the longest lookbehind. Control this by "allusedtext".
2019-06-26 08:23:47 +00:00
ph10
406b9611bd Improve maximum lookbehind calculation for nested lookbehinds. 2019-06-25 15:40:42 +00:00
ph10
344fa86106 Don't ignore {1}+ when it is applied to a parenthesized item. 2019-06-19 16:27:50 +00:00