Commit Graph

129 Commits

Author SHA1 Message Date
zherczeg
1e14b87c29 The JIT compiler should not check repeats after a {0,1} repeat byte code. 2015-08-11 05:30:10 +00:00
ph10
c466cd675e Make (*LIMIT_MATCH=) give an error and correct offsets for limit syntax errors. 2015-08-10 16:34:17 +00:00
ph10
9b52893a26 Fix missing non-existent reference test and bad error offsets for bad \g and \k
items.
2015-08-09 17:46:35 +00:00
ph10
1d368cc3aa Re-write recursion handling to fix another compiler bug and make it all less
error-prone.
2015-08-09 16:29:35 +00:00
zherczeg
be2d8c7264 The JIT compiler did not restore the control verb head in case of *THEN control verbs. 2015-08-08 05:45:17 +00:00
ph10
9ee8238748 Make -q override -l and -q in pcre2grep for compatibility with other greps. 2015-08-05 17:35:36 +00:00
zherczeg
301b123988 Fixed an issue when \p{Any} inside an xclass did not read the current character. 2015-08-05 09:04:01 +00:00
ph10
16c03e4c42 Add missing integer overflow checks. 2015-08-04 09:13:11 +00:00
ph10
22e8e36ef5 Maintenance on tests for Perl compatibility 2015-08-03 17:25:55 +00:00
ph10
6320755748 Fix incorrect minimum matching length when pattern contains (?| groups. 2015-08-03 13:18:49 +00:00
ph10
5db9c9abf9 Fix issues with minimum length finding. 2015-08-01 09:11:28 +00:00
ph10
f64fb1593a Fix bugs for patterns with conditional groups starting with assertions. 2015-07-22 14:34:31 +00:00
ph10
cd195627f1 Fix (?R- not being correctly diagnosed. 2015-07-22 09:29:09 +00:00
ph10
602d9223d4 Fix incorrect compilation for repeated conditionals with only one branch. 2015-07-22 09:01:50 +00:00
ph10
ebaa98b728 Fix not diagnosis of missing ) for callout with string argument. 2015-07-21 14:03:08 +00:00
ph10
dabbaa74c8 Fix "running for ever" bug for deeply nested [: sequences. 2015-07-21 13:42:14 +00:00
ph10
4b80d79499 Fix another fuzzer bug. 2015-07-20 10:17:23 +00:00
zherczeg
4dacfe156e Fix infinite recursion in the JIT compiler when certain patterns when certain patterns are analysed. 2015-07-20 07:38:06 +00:00
ph10
18164a5ad8 Fix empty comment (?#) bug 2015-07-17 16:25:21 +00:00
ph10
e07128a57a Correct test for previous bugfix. 2015-07-17 15:18:17 +00:00
ph10
7998b92dac Fix bad compilation of a possessively repeated conditional that could match an
empty string.
2015-07-17 15:11:45 +00:00
ph10
a0b77e494c Ignore {1} quantifiers. 2015-07-17 13:41:09 +00:00
ph10
b20686e659 Fix crash due to incorrect pre-pass handling of callouts with string arguments,
and tighten up the callout handling.
2015-07-16 17:47:20 +00:00
ph10
9a9af53e07 Fix bad processing of (?x)(*MARK) within another group. 2015-07-15 09:34:04 +00:00
ph10
9003f7b91e Fix [[:>:]] when followed by parenthesis buffer overflow. 2015-07-15 09:08:12 +00:00
zherczeg
4a2cbee22e JIT should return with error when the compiled pattern requires more stack space than the maximum. 2015-06-28 13:31:24 +00:00
ph10
4011f01e4b Fix EBCDIC 0x41 omission and give error for \p and \P in a class when not
supported.
2015-06-19 16:41:22 +00:00
ph10
9b9465f35d Make \c operate like Perl in EBCDIC environments. 2015-06-13 16:10:14 +00:00
ph10
5f11533fc5 Fix empty string matching bug. 2015-06-09 17:41:45 +00:00
ph10
483e0bc706 Check for integer overflow in subroutine calls. 2015-06-08 17:51:54 +00:00
ph10
a0f4752ffa Re-organize tests that didn't work with LINK_SIZE=3. 2015-06-03 17:18:06 +00:00
ph10
7638ce507c Refactor named group handling by adding a pre-pass that generates a list of
named groups with their numbers before the rest of the compiling code is run. 
This has simplified the main compiling code and removed some sources of error.
2015-06-03 16:27:47 +00:00
ph10
f9ccf6dea5 Give error for empty subpattern name such as (?''). 2015-05-19 16:48:57 +00:00
ph10
35849de261 Fix buffer overflow for lookbehind with mutually recursive groups. 2015-05-18 17:31:29 +00:00
ph10
60d1b8bb8f Maintenance on test after running ManyConfigTests. 2015-05-17 17:44:21 +00:00
ph10
cd01b678f0 Fix forward reference by name to duplicate group number bug. 2015-05-16 11:01:48 +00:00
ph10
b7b3192b06 Fix buffer overflow for recursive byname back reference when duplicate names
exist.
2015-05-15 17:09:01 +00:00
ph10
6b0a3653d3 Fix repeated condition check by duplicated name bug. 2015-05-08 16:32:28 +00:00
ph10
08a8f6083e Re-do previous patch and fix new forward-reference-with-quantification bugs. 2015-05-06 16:51:25 +00:00
ph10
86a54875eb Fix bug in previous fix. 2015-05-05 18:46:51 +00:00
ph10
6e7ec542b2 Fix recursive forward reference bug. 2015-05-03 16:46:56 +00:00
ph10
d568023aec Fix compatibility issues for \8 and \9. 2015-04-23 17:28:39 +00:00
ph10
e0e6be1f66 Implement PCRE2_ALT_CIRCUMFLEX. 2015-04-22 17:39:25 +00:00
ph10
6f272dd199 Fix replication bug in pcre2test. 2015-04-21 08:34:10 +00:00
ph10
68fe4373fd Implement PCRE2_NEVER_BACKSLASH_C. 2015-04-13 17:29:05 +00:00
ph10
29ebf9954c Fix very slow find_minlength when mutual recursion is present. 2015-04-13 09:13:39 +00:00
ph10
af2246965b Fix other cases where backtracking after \C could cause a crash. 2015-04-08 16:53:22 +00:00
ph10
3a069051d0 Fix backtracking bug for \C\X* in UTF mode. 2015-04-08 16:33:58 +00:00
ph10
bf5d44cfd7 Fix handling of global matching in pcre2test when a lookbehind assertion
contains \K.
2015-04-06 12:16:36 +00:00
ph10
98d8aba926 Fix pcre2grep loop provoked by \K in a lookbehind assertion in a non-anchored
pattern.
2015-04-03 11:14:19 +00:00