Commit Graph

113 Commits

Author SHA1 Message Date
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
ph10
23795ac7b9 Fix stack overflow instead of error diagnosis for mutual recursion within
lookbehind assertion.
2015-04-01 15:37:54 +00:00
ph10
a02d3b152e Fix diagnosis of negative relative references to non-existent groups. 2015-03-31 15:01:25 +00:00
ph10
d71e5fe980 Fix bad compile for possessive quantifier on group containing a subroutine
reference.
2015-03-29 17:34:04 +00:00
ph10
a030a8f9c8 Fix non-diagnosis of syntax error for (?(?< when not followed by ! or =. 2015-03-29 15:40:45 +00:00
ph10
86f783c60d Fix comment between recursion and quantifier bug. 2015-03-29 11:15:32 +00:00
ph10
1a1781e0c9 Fix mutual recursion inside other parentheses stack overflow bug. 2015-03-27 17:45:02 +00:00
ph10
625fd31e3e Fix bad memory computation for "(*UTF)[\S\V\H]" (a pattern with a negative
class (\S) and explicit wide characters).
2015-03-25 19:26:27 +00:00
ph10
698f0a04ee Add recursion limit to auto-possessification code. 2015-03-25 17:01:04 +00:00
ph10
f63b12103c Fix bugs when (?!) is used as a condition. 2015-03-24 10:21:34 +00:00
ph10
f8d388a20d Implement pcre2_callout_enumerate(). 2015-03-23 15:52:08 +00:00
ph10
6be0761133 Fix data overrun for /(?(?C)/ 2015-03-20 12:37:28 +00:00
ph10
42227e4aa1 Test binary zero in callout strings; change offset to PCRE2_SIZE; some
documentation tidies.
2015-03-16 15:38:26 +00:00
ph10
f2b9e79e29 Add string offset within the pattern to the data passed to a callout with a
string argument.
2015-03-14 12:20:18 +00:00
ph10
4f8d902e79 Fix crash in pcre2test for some callouts with string arguments. 2015-03-14 10:47:43 +00:00
ph10
adc92df2b1 Support manual callout with string argument at start of condition. 2015-03-12 17:00:18 +00:00
zherczeg
a5a121214a Adding more callout with string tests. 2015-03-12 11:49:29 +00:00