Commit Graph

424 Commits

Author SHA1 Message Date
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
cfe332e781 Update tests. 2019-06-20 17:19:13 +00:00
ph10
22ea119045 Typo in doc and update tests 2019-06-20 16:37:30 +00:00
ph10
344fa86106 Don't ignore {1}+ when it is applied to a parenthesized item. 2019-06-19 16:27:50 +00:00
ph10
c981feb45b Fix minimum length bug for patterns containing (*ACCEPT). 2019-06-18 16:07:43 +00:00
ph10
64e0f37d36 Another extension to minimum length calculation. 2019-06-17 16:26:44 +00:00
ph10
770fd48acd 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
ph10
8dd228d5ba 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
ph10
0a0e1c8958 Another fix to the recent (*ACCEPT) patch. Fixes clusterfuzz 15242. 2019-06-14 15:44:57 +00:00
ph10
9b8f99ec99 Make pcre2_match() return (*MARK) names from successful conditional assertions,
as Perl and the JIT do.
2019-06-13 16:49:40 +00:00
ph10
0804b59736 Minor improvement to minimum length calculation. 2019-06-13 16:00:11 +00:00
ph10
a4d1257a9f Fix minor oversight in previous patch. Fixes clusterfuzz 15199. 2019-06-11 07:37:29 +00:00
ph10
e3feb34e18 Allow (*ACCEPT) to be quantified. 2019-06-10 16:41:22 +00:00
ph10
24de8f52da Add support for invalid UTF-8 matching to pcre2grep. 2019-05-28 14:14:22 +00:00
ph10
df13a172d5 Implement support for invalid UTF in the pcre2_match() interpreter. 2019-05-24 17:15:48 +00:00
ph10
a5fd29b912 Fix crash when \X is used without UTF in JIT. 2019-05-13 16:26:17 +00:00
ph10
ac5f127ddb 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
ph10
673daf6692 Fix crash in pcre2_substitute() with NULL match context. 2019-03-11 17:29:08 +00:00
ph10
b3438faeaf Compile \p{Any} the same as . in DOTALL mode, to benefit from auto-anchoring. 2019-02-13 17:30:24 +00:00
ph10
f9d98633e9 Fix overflow bug in new /u code. Fixes ClusterFuzz 13073. 2019-02-13 16:48:30 +00:00
ph10
04b65d864e Implement PCRE2_EXTRA_ALT_BSUX to support ECMAscript 6's \u{hhh..} syntax. 2019-02-12 17:50:19 +00:00
ph10
528c8c2363 Previout bug-fix was bad. This properly fixes an overrun while reading a
Unicode group name.
2019-02-07 17:59:37 +00:00
ph10
e5959e493e 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
ph10
be7d18b10d Fix bug in VERSION conditional test in DFA matching. 2019-01-29 14:34:59 +00:00
ph10
0f27a7553f Fix issues with BAD_ESCAPE_IS_LITERAL in character classes. 2019-01-04 16:41:32 +00:00
ph10
72542e3c19 Fix non-recognition of anchoring when preceded by (*MARK) etc. 2018-11-27 16:00:58 +00:00
ph10
b3f69214be Add --disable-pcre2grep-callout-fork configuration setting. 2018-11-17 16:45:57 +00:00
ph10
064a85f5de Upgrade the as yet unreleased substitute callout facility. 2018-11-12 16:02:01 +00:00
ph10
894a82db17 Fix zero-repeated subroutine call at start of pattern bug, which recorded an
incorrect first code unit.
2018-10-20 09:28:02 +00:00
ph10
5e94fcc35a Implement PCRE2_COPY_MATCHED_SUBJECT. 2018-10-17 08:33:38 +00:00
ph10
44306c4fe9 Update Makefile.am for compiling with gcov. Add Script Run tests to improve
coverage.
2018-10-14 15:56:36 +00:00
ph10
baf6848e3e Upgrade the ucptest program (used only by maintainer) and script run tests. 2018-10-14 14:27:16 +00:00
ph10
385a905e3f Documentation and tests update for script runs. 2018-10-12 17:02:34 +00:00
ph10
08469ee67b Update Script Run code to use the Script Extension property instead of the
Script property.
2018-10-09 16:42:21 +00:00
ph10
7f72517d38 Fix bugs of omission in new script run code. 2018-10-03 15:41:47 +00:00
ph10
c6c2308c01 Basic "script run" implementation. Not yet complete, and not yet documented. 2018-10-02 15:25:58 +00:00
ph10
202311b568 Implement Perl 5.28's alphabetic lookaround syntax, e.g. (*pla:...) and also
(*atomic:...).
2018-09-24 16:23:53 +00:00
ph10
3f42c5f14d Implement PCRE2_EXTRA_ESCAPED_CR_IS_LF 2018-09-21 16:59:48 +00:00
ph10
1a030c42df Implement callouts from pcre2_substitute(). 2018-09-18 16:31:30 +00:00
ph10
6fea58392e Add "allvector" to pcre2test. 2018-09-15 17:10:39 +00:00
ph10
2f383e6e0f Treat empty-string-matching repeated conditionals the same as ordinary ones
when checking for an anchored pattern.
2018-09-03 15:20:40 +00:00
ph10
a4498fca10 Fix anchoring bug in conditionals with only one branch. 2018-09-02 16:53:29 +00:00
ph10
8b9f137eb1 Lock out \N{U+hhhh} in non-UTF (non-Unicode) modes. 2018-09-02 16:03:27 +00:00
ph10
337992276e Fix bad auto-possessification of certain types of class. 2018-08-17 14:45:35 +00:00
ph10
b679caf2b7 Fix dynamic options changing bug. 2018-08-04 08:20:18 +00:00
ph10
f37554f550 Make /x more Perl-compatible by recognizing all of Unicode's "Pattern White
Space" characters, not just the ASCII ones.
2018-08-03 09:38:36 +00:00
ph10
f1908320bc Add support for (?^) as now supported by Perl. 2018-07-28 16:23:24 +00:00
ph10
b5cd347dab Give specific error for \F as for \L, \U etc. 2018-07-27 16:55:52 +00:00