Commit Graph

254 Commits

Author SHA1 Message Date
ph10
9224b3bddb Implemented pcre2_code_copy(). 2016-02-26 18:26:17 +00:00
ph10
c3b2163321 Detect missing closing parentheses during the pre-pass. 2016-02-13 15:30:29 +00:00
ph10
cd0085ed22 Fix workspace overflow for deep nested parentheses with (*ACCEPT). 2016-02-10 18:24:02 +00:00
ph10
0c70759be9 Fix pcre2test loop when a callout is in an initial lookbehind. 2016-02-06 16:40:59 +00:00
ph10
3d93c737c8 Detect unmatched closing parentheses in the pre-scan to avoid giving incorrect
error messages.
2016-02-02 17:22:55 +00:00
ph10
acc1a9b13c Don't set PCRE2_NO_AUTO_CAPTURE when REG_NOSUB is passed to regcomp(). 2016-01-31 19:14:15 +00:00
ph10
40d06d3bdf Update valgrind parameters. 2016-01-30 15:19:48 +00:00
ph10
74a085802c Two pcre2test extensions: quoted literal substrings in hex patterns and
detection of unsupported binary zeros in file input.
2016-01-29 18:16:59 +00:00
ph10
ace3d74cc7 Patches to fix tests under Windows. 2016-01-29 15:01:17 +00:00
ph10
995365cc8b Remove unwanted trailing space in test data. 2016-01-07 16:08:44 +00:00
ph10
9936504425 Fix printing of *MARK names containing binary zeroes in pcre2test. 2015-12-16 18:44:24 +00:00
ph10
42c40455d7 Some tests were in the wrong files. 2015-12-15 18:21:49 +00:00
ph10
203b6126ff Implement PCRE2_SUBSTITUTE_{OVERFLOW_LENGTH,UNKNOWN_UNSET}. 2015-12-12 18:45:40 +00:00
ph10
c5abfa13a3 Harden pcre2test against ridiculously large values in modifiers and command
line arguments.
2015-12-05 18:17:41 +00:00
ph10
90cb7c0d75 Implement PCRE2_SUBSTITUTE_UNSET_EMPTY. 2015-12-04 18:39:08 +00:00
ph10
ea42e9515b Fix typo introduced by ChangeLog 107. 2015-12-04 14:34:35 +00:00
ph10
2fb94fbefb Fix \) in (*verb) "name" bug. 2015-12-03 18:36:36 +00:00
ph10
21f39a6300 Fix /x bug when pattern starts with whitespace followed by (?-x). 2015-12-03 16:58:31 +00:00
ph10
58ab72f70b Fix issues with NULL characters in patterns. 2015-12-02 17:39:26 +00:00
ph10
396d7a6139 Fix extended *verb name ignored terminating whitespace bug. 2015-12-01 17:41:24 +00:00
ph10
70a8ef110a Fix empty \Q\E between an item and a qualifier in auto-callout mode. 2015-11-30 17:31:16 +00:00
ph10
055e6c2d56 Fix bad behaviour for isolated \E before qualifier with auto-callout. 2015-11-27 17:34:36 +00:00
ph10
37e2be8319 Updated tests for previous patch. 2015-11-27 17:14:51 +00:00
ph10
865ab5cd5d Fix bad offset value in invalid UTF pattern error. 2015-11-27 15:58:44 +00:00
ph10
2a47f4453f Fix auto-callout with (?# comment bug. 2015-11-25 18:46:35 +00:00
ph10
702c2433f8 Make startoffset a synonym of offset in pcre2test. 2015-11-21 16:10:24 +00:00
ph10
99bd83d261 Fix wide character problem with negated POSIX ascii and xdigit class items. 2015-11-20 16:55:36 +00:00
ph10
836b40fbd9 Fix [:punct:] bug in UCP mode (matching chars in the range 128-255) 2015-11-17 17:59:35 +00:00
ph10
7a19cd2097 Fix single-character POSIX class bug in UCP mode. 2015-11-17 17:13:43 +00:00
zherczeg
e2ae62a7a9 Fix two offset_limit bug in JIT. 2015-11-16 08:30:48 +00:00
ph10
9790def8a5 Implement PCRE2_INFO_HASBACKSLASHC. 2015-11-14 17:28:19 +00:00
ph10
2e704cb0af Document JIT compile size limit and give more info in pcre2test. 2015-11-14 16:48:32 +00:00
ph10
6007bf351a Run test 8 (sizes and offsets and mode-specific things) for link size 3 and 4
as well as for link size 2, with different output files in each case.
2015-11-14 13:22:34 +00:00
ph10
5580bac69f Add a new test. 2015-11-13 17:16:28 +00:00
ph10
2c76a4997d Don't split CRLF in pcre2_substitute() when it's a valid newline sequence. 2015-11-13 16:52:26 +00:00
ph10
fc8bdfded5 Small optimizations in pcre2_study.c 2015-11-11 09:42:26 +00:00
ph10
961e72941b Don't use group caching when (?| is involved; instead use a counter to cap too
much computation.
2015-11-10 14:33:28 +00:00
ph10
6ce2ab6ce6 Cap minimum length at 65535 and check for integer overflow. 2015-11-09 18:45:15 +00:00
ph10
0b7e77b6e3 Adjust tests for workspace overflow and relevant comments in pcre2_compile.c 2015-11-08 14:41:34 +00:00
ph10
65cb917512 Use caching to improve could_be_empty() and find_fixed_length() compile times,
especially when recursion/subroutine calls are present.
2015-11-08 14:20:09 +00:00
ph10
284c665660 Fix (*NO_AUTO_POSSESS) 2015-11-05 18:03:16 +00:00
ph10
5ca1010ab6 Implement pcre2_set_max_pattern_length() 2015-11-05 17:33:39 +00:00
ph10
55030b3c51 Fix buglet in recent name length patch. 2015-11-03 20:09:33 +00:00
ph10
7075133c82 Check subpattern name lengths dynamically. 2015-11-03 20:04:23 +00:00
ph10
7363540f80 Dynamic check of (*MARK) etc name length to avoid the possibility of overflow. 2015-11-03 19:14:31 +00:00
ph10
8868f837e4 Forbid \K patterns that end before they start in pcre2_substitute(). 2015-11-03 17:38:00 +00:00
ph10
5f5dda0fe5 Give error for overlong lookbehind assertion. 2015-11-03 10:39:27 +00:00
ph10
753d786e99 Bad max lookbehind length was calculated when a back reference contained a
recursion.
2015-11-01 17:31:48 +00:00
ph10
7a49d2b4ab Fix VERSION condition bug. 2015-11-01 16:28:13 +00:00
ph10
cd0bccc21b Avoid the need for an integer overflow check in pcre2_substitute() by adding a
check for a number greater than the largest capturing group.
2015-10-30 18:25:19 +00:00
ph10
f99f7ee6a1 Fix pcre2_substitute(): set zero-terminated length before UTF validity check. 2015-10-30 17:30:03 +00:00
ph10
7a44fb07ba Fix regerror() small buffer issues. 2015-10-30 17:17:40 +00:00
ph10
1794fee4f3 Add replication feature for patterns to pcre2test. 2015-10-30 15:20:07 +00:00
ph10
4818eb5d39 Improve error message for overly-complicated patterns. 2015-10-28 09:59:53 +00:00
ph10
92bf097431 Fix overlong (*MARK) or (*THEN) names bug. 2015-10-28 09:25:31 +00:00
ph10
e7e2775db1 Fix PCRE2_NO_AUTO_CAPTURE bug. 2015-10-25 17:35:34 +00:00
ph10
3d9e87df54 Fix UCP with [[:<]] and [[:>:]] bad compile bug. 2015-10-21 11:29:07 +00:00
ph10
57a8611a13 Implement --never-backslash-C 2015-10-17 13:50:56 +00:00
ph10
aed54d0e95 Fix integer overflow for patterns whose minimum matching length is very, very
large.
2015-10-09 16:54:29 +00:00
ph10
520540902f Fix compiler bug for classes such as [\W\p{Any}]. 2015-10-09 16:06:53 +00:00
ph10
6d2acc9cc0 Implement PCRE2_SUBSTITUTE_EXTENDED. 2015-10-07 17:32:48 +00:00
ph10
94c27404fa Add null_context to pcre2test for testing NULL contexts. 2015-09-23 11:49:03 +00:00
ph10
389a476cb0 Implement PCRE2_USE_OFFSET_LIMIT and pcre2_set_offset_limit(). No documentation
yet.
2015-09-22 11:24:28 +00:00
ph10
cdb20c3526 Tidied up a lot of comments in the test files. 2015-09-16 16:49:48 +00:00
ph10
b72808da39 Create a suppressions file for valgrind with JIT. 2015-09-11 16:56:47 +00:00
ph10
60dd91d2eb Implement #newline_default and adjust testdata and scripts to use it. 2015-09-08 17:01:17 +00:00
zherczeg
eaf0138957 Fix two issues in JIT. 2015-09-02 08:35:50 +00:00
ph10
ad96f2003a Complete escape processing for PCRE2_ALT_VERBNAMES 2015-09-01 17:32:42 +00:00
ph10
29e47648ec Implemented PCRE2_ALT_VERBNAMES 2015-08-30 17:47:36 +00:00
ph10
d9ad0ecbd4 Fix pcre2test splitting modifier lists at white space. 2015-08-30 14:11:15 +00:00
ph10
30ea6bf425 Add ${*MARK} feature to pcre2_substitute(). 2015-08-29 17:13:09 +00:00
zherczeg
83f4b3e483 Fix two assertion fails in JIT found by Karl Skomski. 2015-08-24 09:25:04 +00:00
ph10
db81c6b5e6 Runtime UTF checks now take not of the starting offset. 2015-08-18 10:34:05 +00:00
zherczeg
e6005eb54c A bug which was introduced by the single character repetition optimization was fixed. 2015-08-13 11:35:38 +00:00
zherczeg
b8163e80ba The JIT compiler should restore the control chain for empty possessive repeats. 2015-08-11 13:20:37 +00:00
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