Commit Graph

1310 Commits

Author SHA1 Message Date
Philip.Hazel e413f3147c Optimize certain starting code unit bit maps into a single starting code unit. 2019-09-13 17:02:06 +00:00
Philip.Hazel d917899be5 Improve starting-byte bit map for UTF-8 patterns with wide characters in
classes.
2019-09-10 15:38:42 +00:00
Philip.Hazel 78fae97f6c Mend bug introduced in previous patch. Fixes crash detected by ClusterFuzz
17101.
2019-09-10 13:22:08 +00:00
Philip.Hazel bf15267c30 Optimize classes such as [Aa] to be a single caseless character. 2019-09-09 17:00:19 +00:00
Zoltán Herczeg aae44b83f8 Add underflow check in JIT. 2019-09-09 07:12:00 +00:00
Philip.Hazel b48aa469d6 Install .gitignore file to help those using svn via git. 2019-09-07 15:27:05 +00:00
Philip.Hazel 27d40c8ad8 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
Philip.Hazel 7bbdc58513 Fix pessimizing optimization of start-of-match code units in the interpreters. 2019-09-06 16:08:45 +00:00
Philip.Hazel 963b570fd0 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
Philip.Hazel 87bc092222 Cut out maketables_free when included in freestanding program. 2019-09-04 07:23:01 +00:00
Philip.Hazel 0970ae4195 Add the pcre2_maketables_free() function. 2019-09-03 14:16:07 +00:00
Philip.Hazel 45b219e6bc Fix bug introduced in commit 1133. Lookbehinds that follow a condition were not
always properly handled.
2019-08-26 16:28:26 +00:00
Philip.Hazel 1e5e9aaa70 Update Makefile.am to add src/pcre2_jit_simd_inc.h to distribution. 2019-08-26 15:10:31 +00:00
Zoltán Herczeg 60df4c65d5 Move JIT simd into a separate header file. 2019-08-26 12:02:03 +00:00
Philip.Hazel 71eb916d79 Fix allusedtext bug, rightmost consulted character incorrect in negative
lookaheads.
2019-08-10 11:34:50 +00:00
Philip.Hazel ce751bfc84 Partial match documentation rewritten. 2019-08-07 17:21:02 +00:00
Philip.Hazel 59c7c5d100 Fix incorrect computation of group length when one branch exceeded 65535. 2019-08-03 08:30:40 +00:00
Philip.Hazel 81ad92820a Comments updates. 2019-08-01 16:59:50 +00:00
Philip.Hazel ec6191cd7f Documentation update and ensure current pcre2.h.generic. 2019-08-01 16:49:09 +00:00
Philip.Hazel 630e4bb516 Fix typo in test data comment. 2019-08-01 16:42:36 +00:00
Philip.Hazel c0ed5a3ab3 Minor upgrade to pcre2test and comment in ucptest. 2019-07-30 17:59:42 +00:00
Philip.Hazel b69460ece3 Documentation update. 2019-07-29 16:19:58 +00:00
Philip.Hazel a33d61aada Avoid compiler warnings for this maintenance test program. 2019-07-29 16:10:31 +00:00
Philip.Hazel 7292c751a3 Remove incorrect comment. 2019-07-29 16:03:25 +00:00
Philip.Hazel aff5a78056 Upgrade to Unicode 12.1.0 2019-07-29 15:32:36 +00:00
Philip.Hazel 9319b5bb83 Correct tables argument data type for pcre2_set_character_tables() and fix
documentation for pcre2_maketables().
2019-07-28 15:58:24 +00:00
Philip.Hazel fe2df37c9f Documentation and test update. 2019-07-28 15:32:11 +00:00
Philip.Hazel 24c62fc0d0 (*ACCEPT) at start of branch was not recording "may match empty string". 2019-07-23 16:58:57 +00:00
Zoltán Herczeg 82a4729e13 Follow the partial matching changes in JIT. 2019-07-23 12:34:58 +00:00
Philip.Hazel 3572634086 More partial match tweaks. 2019-07-22 16:30:44 +00:00
Philip.Hazel f7e21162fa Documentation typo fixes. 2019-07-22 11:05:19 +00:00
Philip.Hazel c84a06c96e Update definition of partial match and fix \z and \Z (as documented). 2019-07-21 16:48:13 +00:00
Philip.Hazel 344056baf8 Update pcre2demo with match_data block size information. 2019-07-19 15:31:54 +00:00
Philip.Hazel c30815f5a1 Fix bug in recent patch for lookbehinds within lookaheads. Fixes ClusterFuzz
15933.
2019-07-18 17:20:29 +00:00
Zoltán Herczeg f5b35e7943 Rework alternative matching in JIT. 2019-07-18 06:11:04 +00:00
Zoltán Herczeg c11b23e8cc JIT compiler update. 2019-07-17 07:05:48 +00:00
Philip.Hazel 0d0ee67eb0 Check start code unit bit map for setting minimum length. 2019-07-16 16:16:45 +00:00
Philip.Hazel bca9888a2c Implemented pcre2_get_match_data_size(). 2019-07-16 15:50:09 +00:00
Philip.Hazel 046c5cd21c Fix lookbehind within lookahead within lookbehind misbehaviour bug. 2019-07-16 15:06:21 +00:00
Philip.Hazel 66811c6c73 Fix oversights in recent non-atomic assertions patch. Fixes ClusterFuzz 15837. 2019-07-15 16:04:13 +00:00
Philip.Hazel 4677b1b0bb Tidy partial matching code; prepare for possible future change. 2019-07-14 16:44:46 +00:00
Philip.Hazel 620f3a1307 Implement non-atomic positive assertions. 2019-07-13 11:12:03 +00:00
Zoltán Herczeg 691aca7a86 Improve non-virtual register usage in JIT. 2019-07-10 14:57:43 +00:00
Philip.Hazel 4543001e85 In perltest.sh, show Perl version in current conventional format. 2019-07-09 14:20:45 +00:00
Philip.Hazel f985a68ea5 Additional overflow test. 2019-07-05 15:49:37 +00:00
Philip.Hazel 2e06fdcdc1 Check for integer overflow when computing lookbehind lengths. Fixes Clusterfuzz
issue 13656.
2019-07-04 17:01:53 +00:00
Philip.Hazel a5c601091e Give error for zero timing argument to pcre2test. 2019-07-03 17:15:37 +00:00
Philip.Hazel 4866bd3652 Fix bugs in recent patch for setting the maximum lookbehind. 2019-06-28 16:58:08 +00:00
Philip.Hazel c0d0ee5365 Fix partial matching bug in pcre2_dfa_match(). 2019-06-26 16:13:28 +00:00
Philip.Hazel 434e3f7468 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