Philip.Hazel
|
5ea9f6b0f1
|
Some places where the new opcode OP_COMMIT_ARG needs to be handled and which I
forgot.
|
2018-07-21 14:52:26 +00:00 |
Philip.Hazel
|
192b82cf6e
|
Allow :NAME on (*ACCEPT), (*FAIL), and (*COMMIT) and fix bug with (*MARK)
followed by (*ACCEPT) in an assertion. More small updates to perltest.sh.
|
2018-07-21 14:34:51 +00:00 |
Philip.Hazel
|
a0e367f5b6
|
Update Perl tester to allow for optimization to be turned off. Required moving
some tests out of the Perl-compatible files.
|
2018-07-14 16:16:51 +00:00 |
Philip.Hazel
|
50aa69657e
|
Fix bug in VERSION number reading.
|
2018-07-02 12:26:04 +00:00 |
Philip.Hazel
|
b2294373d7
|
Ignore qualifiers on lookaheads within lookbehinds when checking for a fixed
length.
|
2018-07-02 11:23:45 +00:00 |
Philip.Hazel
|
1c79bdf36f
|
Fix global search/replace in pcre2test and pcre2_substitute() when the pattern
matches an empty string, but never at the starting offset.
|
2018-07-02 10:54:03 +00:00 |
Philip.Hazel
|
89c2a02027
|
Fix bug when \K is used in a lookbehind in a substitute pattern.
|
2018-06-22 16:29:56 +00:00 |
Philip.Hazel
|
53a588431c
|
Fix auto-possessification bug at the end of a capturing group that is called
recursively.
|
2018-01-31 17:53:56 +00:00 |
Zoltán Herczeg
|
940627c83a
|
Fix a typo in JIT and add a test.
|
2018-01-10 09:28:03 +00:00 |
Philip.Hazel
|
807f37095d
|
Previous FIRSTLINE patch was broken. Fix it.
|
2018-01-01 14:54:06 +00:00 |
Philip.Hazel
|
7a6e8a4454
|
Fix PCRE2_FIRSTLINE bug when a pattern match starts with the first code unit of
a newline sequence.
|
2018-01-01 14:12:35 +00:00 |
Philip.Hazel
|
94d5f4a050
|
Add callout_flags to callout blocks, and set bits within it from pcre2_match()
interpretation.
|
2017-12-22 15:56:27 +00:00 |
Philip.Hazel
|
814cc96bc5
|
Save extra compile options with the compiled pattern, and add an info call to
retrieve them.
|
2017-12-16 17:49:26 +00:00 |
Philip.Hazel
|
3458a2e2cd
|
Fix infelicity in not finding a first character inside a non-assertive group
within a positive assertion.
|
2017-12-12 16:23:01 +00:00 |
Philip.Hazel
|
59d85d7b55
|
Fix incorrect first matching character when a backreference with zero minimum
repeat starts a pattern (possibly after assertions).
|
2017-12-12 15:01:51 +00:00 |
Philip.Hazel
|
4d82a61d47
|
Hyphen at the end of a character class is always literal. Give error for false
range after \d etc.
|
2017-07-29 15:54:04 +00:00 |
Philip.Hazel
|
810d9b6da5
|
Code tidies for 10.30-RC1 release candidate.
|
2017-07-19 16:04:15 +00:00 |
Philip.Hazel
|
b7d5cee61f
|
Allow anchored patterns to use "first code unit" optimization.
|
2017-06-30 16:00:33 +00:00 |
Philip.Hazel
|
a083420cac
|
Implement PCRE2_EXTRA_MATCH_LINE and PCRE2_EXTRA_MATCH_WORD for the benefit
of pcre2grep.
|
2017-06-16 17:51:13 +00:00 |
Philip.Hazel
|
c4fac10bad
|
Implement PCRE2_LITERAL and REG_NOSPEC.
|
2017-06-15 16:41:44 +00:00 |
Philip.Hazel
|
e3a0f22349
|
Implement PCRE2_EXTRA_BAD_ESCAPE_IS_LITERAL.
|
2017-06-01 18:10:15 +00:00 |
Philip.Hazel
|
3d80fa4fc2
|
Implement PCRE2_NEWLINE_NUL.
|
2017-05-26 17:14:36 +00:00 |
Philip.Hazel
|
dfc9712bcd
|
Add additional compile options and PCRE2_EXTRA_ALLOW_SURROGATE_ESCAPES.
|
2017-05-17 17:55:11 +00:00 |
Philip.Hazel
|
6e943e5f47
|
Experimental pattern conversion code (no public documentation yet).
|
2017-05-06 16:19:39 +00:00 |
Philip.Hazel
|
369d82e03a
|
Implement Perl's /n option, which is the same as PCRE2_NO_AUTO_CAPTURE.
|
2017-04-18 16:21:50 +00:00 |
Philip.Hazel
|
3dca43fdff
|
Implement PCRE2_EXTENDED_MORE and friends.
|
2017-04-18 12:32:52 +00:00 |
Philip.Hazel
|
202cb2cf41
|
Improve testing coverage with updates to pcre2test and test files; also get rid
of redundant code in pcre2_match().
|
2017-04-16 13:03:30 +00:00 |
Zoltán Herczeg
|
1379a48d94
|
Support end anchored in JIT.
|
2017-04-13 11:52:36 +00:00 |
Philip.Hazel
|
3b8672bf49
|
Fix ACCEPT issue with ENDANCHORED.
|
2017-04-11 14:53:26 +00:00 |
Philip.Hazel
|
14989bd454
|
Add explicit heap limiting options to pcre2_match(), with associated features
for listing, configuring, etc.
|
2017-04-11 11:47:25 +00:00 |
Philip.Hazel
|
09f87cbfce
|
Extend auto-anchoring to ignore "never-obeyed" groups at the start.
|
2017-04-07 08:46:29 +00:00 |
Philip.Hazel
|
a3275d1e0f
|
Implement PCRE2_ENDANCHORED.
|
2017-04-04 17:09:33 +00:00 |
Philip.Hazel
|
0757041114
|
Fix non-passing of mark values out of recursions.
|
2017-04-04 11:37:21 +00:00 |
Zoltán Herczeg
|
25cec7a966
|
Support full ovector data for JIT callouts.
|
2017-03-25 06:33:41 +00:00 |
Philip.Hazel
|
39d9294d14
|
Move some tests back into test 1 now that JIT has been updated.
|
2017-03-24 18:40:15 +00:00 |
Philip.Hazel
|
45ddeb70cf
|
Fix issues with (*VERB)s inside recursive subroutine calls.
|
2017-03-23 17:54:58 +00:00 |
Philip.Hazel
|
cde5f12cee
|
Fix 32-bit error buffer size bug in pcre2test (Bugzilla 2079).
|
2017-03-21 17:46:21 +00:00 |
Zoltán Herczeg
|
131209e22d
|
Capture control verbs inside the conditional assertion of a conditional block.
|
2017-03-20 10:41:13 +00:00 |
Zoltán Herczeg
|
b55ef12cc1
|
Reworked the recursive pattern matching in the JIT compiler to follow the interpreter changes.
|
2017-03-19 03:35:27 +00:00 |
Philip.Hazel
|
d7da2dcb37
|
Fix crash for forward reference in lookbehind with PCRE2_ANCHORED. Fixes
oss-fuzz issue 865.
|
2017-03-16 17:17:47 +00:00 |
Philip.Hazel
|
04da0725f3
|
Remove obsolete OP_ONCE_NC internal opcode.
|
2017-03-11 17:59:23 +00:00 |
Philip.Hazel
|
26e92bc554
|
Fix crash for pattern with very many captures. Fixes oss-fuzz issue 783.
|
2017-03-10 16:34:54 +00:00 |
Philip.Hazel
|
20804215a8
|
Code for new interpreter (build system and documentation still to be done).
|
2017-03-09 16:23:28 +00:00 |
Philip.Hazel
|
f6f7c9148f
|
Check malloc returns in pcre2test.
|
2017-02-23 17:05:43 +00:00 |
Philip.Hazel
|
3fb194afa4
|
Cache group minima to speed up studying of pathological patterns. Fixes
oss-fuzz #557.
|
2017-02-10 16:33:15 +00:00 |
Philip.Hazel
|
4311f49d0e
|
Fix \g+ bug when the number that follows is too big.
|
2017-01-31 17:15:30 +00:00 |
Philip.Hazel
|
62659dd2f3
|
Add callout_error to pcre2test and stop the fuzzer after 100 callouts.
|
2016-12-28 15:05:48 +00:00 |
Philip.Hazel
|
f676362977
|
Fix issue with \Q\E after a callout before an assertion condition.
|
2016-12-28 12:26:12 +00:00 |
Philip.Hazel
|
fdf7946ee0
|
Fail hyphen after POSIX character class.
|
2016-12-27 11:50:28 +00:00 |
Philip.Hazel
|
6c48775955
|
Fix mis-parsing of a conditional group with callout but a question mark where
the assertion should start.
|
2016-12-23 18:34:10 +00:00 |
Philip.Hazel
|
d15aab4d17
|
More refactoring: keep track of empty branches during compiling, replacing a
post-compile scan.
|
2016-12-23 17:09:37 +00:00 |
Philip.Hazel
|
a984029d80
|
Fix incorrect internal error for very complicated back reference handling.
|
2016-12-20 16:47:41 +00:00 |
Philip.Hazel
|
f77339a3ca
|
Fix \Q\E quantification bug.
|
2016-12-11 16:42:29 +00:00 |
Philip.Hazel
|
7914fa82a9
|
Fix OOB error in substitute with start offset longer than length.
|
2016-12-09 18:19:38 +00:00 |
Philip.Hazel
|
bcad1aa4f6
|
Fix NULL defer in extended substition for \p, \P, or \X.
|
2016-12-09 16:57:51 +00:00 |
Philip.Hazel
|
0e04c156a4
|
Fix buffer overflow in partial match test for CRLF in empty buffer.
|
2016-12-08 17:55:26 +00:00 |
Philip.Hazel
|
14f6b9fb03
|
Fix \Q...\E bug in (*VERB) name when PCRE2_ALT_VERBNAMES and PCRE2_AUTO_CALLOUT
were both specified.
|
2016-11-27 16:14:33 +00:00 |
Philip.Hazel
|
7390ce13f6
|
Quantifiers following (*VERB)s were not being diagnosed.
|
2016-11-25 10:37:23 +00:00 |
Philip.Hazel
|
4c69f50e69
|
Fix bad behaviour for subroutine call in lookbehind when the called subroutine
contained an option setting such as (?s) and PCRE2_ANCHORED was set.
|
2016-11-23 17:17:57 +00:00 |
Philip.Hazel
|
43e541adda
|
Update test for previous pcre2test update (overlooked).
|
2016-11-22 12:31:03 +00:00 |
Philip.Hazel
|
e0cccdd028
|
Fix overrun bug caused by conditional with assertion using too much memory.
|
2016-11-18 18:59:37 +00:00 |
Philip.Hazel
|
21c084125c
|
Fix global overflow bug for get/copy names in pcre2test.
|
2016-11-10 17:08:27 +00:00 |
Philip.Hazel
|
02e8b83bed
|
Test update.
|
2016-11-04 16:40:08 +00:00 |
Philip.Hazel
|
e533e0f774
|
Fix overrun for unterminated number after \g'
|
2016-11-04 11:05:21 +00:00 |
Philip.Hazel
|
12a6d697fe
|
Fix read beyond unterminated quantifier at end of pattern.
|
2016-11-01 12:12:45 +00:00 |
Philip.Hazel
|
24ab24fde0
|
Fix bad memory calculation when the first branch of a lookbehind is of zero
length.
|
2016-10-28 16:09:08 +00:00 |
Philip.Hazel
|
2821076981
|
Diagnose an overall recursion (?0) inside a lookbehind as an error.
|
2016-10-23 17:05:09 +00:00 |
Philip.Hazel
|
a22c5e4204
|
Fix optimization bugs when pattern starts with lookahead.
|
2016-10-18 11:22:40 +00:00 |
Philip.Hazel
|
bc3e331efd
|
Add test for bug already fixed by the refactoring.
|
2016-10-13 16:08:08 +00:00 |
Philip.Hazel
|
99264dfc23
|
Major refactoring of pcre2_compile.c; see ChangeLog and HACKING.
|
2016-10-02 16:01:01 +00:00 |
Philip.Hazel
|
9b741ad59d
|
Detect overflow in pcre2test pattern and subject repetition counts.
|
2016-07-06 08:42:50 +00:00 |
Philip.Hazel
|
0a29ecbe02
|
Return an error code when pcre2_get_error_message() does not recognize an error
code, and add a pcre2test facility for testing this.
|
2016-06-17 11:30:27 +00:00 |
Philip.Hazel
|
94e07de498
|
Detect missing closing parentheses during the pre-pass.
|
2016-02-13 15:30:29 +00:00 |
Philip.Hazel
|
78aff8c80f
|
Fix pcre2test loop when a callout is in an initial lookbehind.
|
2016-02-06 16:40:59 +00:00 |
Philip.Hazel
|
9f75a0f92a
|
Detect unmatched closing parentheses in the pre-scan to avoid giving incorrect
error messages.
|
2016-02-02 17:22:55 +00:00 |
Philip.Hazel
|
8febd27344
|
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 |
Philip.Hazel
|
57c44eec15
|
Fix printing of *MARK names containing binary zeroes in pcre2test.
|
2015-12-16 18:44:24 +00:00 |
Philip.Hazel
|
255974ed28
|
Some tests were in the wrong files.
|
2015-12-15 18:21:49 +00:00 |
Philip.Hazel
|
35e0f55783
|
Implement PCRE2_SUBSTITUTE_{OVERFLOW_LENGTH,UNKNOWN_UNSET}.
|
2015-12-12 18:45:40 +00:00 |
Philip.Hazel
|
b34dbecb75
|
Harden pcre2test against ridiculously large values in modifiers and command
line arguments.
|
2015-12-05 18:17:41 +00:00 |
Philip.Hazel
|
2f684a60ed
|
Implement PCRE2_SUBSTITUTE_UNSET_EMPTY.
|
2015-12-04 18:39:08 +00:00 |
Philip.Hazel
|
a7c9027ae6
|
Fix \) in (*verb) "name" bug.
|
2015-12-03 18:36:36 +00:00 |
Philip.Hazel
|
1f9b2a2e4b
|
Fix /x bug when pattern starts with whitespace followed by (?-x).
|
2015-12-03 16:58:31 +00:00 |
Philip.Hazel
|
d71b70cdf7
|
Fix issues with NULL characters in patterns.
|
2015-12-02 17:39:26 +00:00 |
Philip.Hazel
|
7b1d9549c6
|
Fix extended *verb name ignored terminating whitespace bug.
|
2015-12-01 17:41:24 +00:00 |
Philip.Hazel
|
12fc152074
|
Fix empty \Q\E between an item and a qualifier in auto-callout mode.
|
2015-11-30 17:31:16 +00:00 |
Philip.Hazel
|
de6603d294
|
Fix bad behaviour for isolated \E before qualifier with auto-callout.
|
2015-11-27 17:34:36 +00:00 |
Philip.Hazel
|
2eb24e2dac
|
Fix auto-callout with (?# comment bug.
|
2015-11-25 18:46:35 +00:00 |
Philip.Hazel
|
c7e9887a65
|
Make startoffset a synonym of offset in pcre2test.
|
2015-11-21 16:10:24 +00:00 |
Philip.Hazel
|
6650a2fd9a
|
Fix single-character POSIX class bug in UCP mode.
|
2015-11-17 17:13:43 +00:00 |
Zoltán Herczeg
|
c0d0f2f65e
|
Fix two offset_limit bug in JIT.
|
2015-11-16 08:30:48 +00:00 |
Philip.Hazel
|
5ced14bf24
|
Implement PCRE2_INFO_HASBACKSLASHC.
|
2015-11-14 17:28:19 +00:00 |
Philip.Hazel
|
5dce5b3727
|
Add a new test.
|
2015-11-13 17:16:28 +00:00 |
Philip.Hazel
|
299e587f9b
|
Don't split CRLF in pcre2_substitute() when it's a valid newline sequence.
|
2015-11-13 16:52:26 +00:00 |
Philip.Hazel
|
7bf5d9efd0
|
Small optimizations in pcre2_study.c
|
2015-11-11 09:42:26 +00:00 |
Philip.Hazel
|
e7727c36be
|
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 |
Philip.Hazel
|
a710d3b37b
|
Cap minimum length at 65535 and check for integer overflow.
|
2015-11-09 18:45:15 +00:00 |
Philip.Hazel
|
89b1ae1c98
|
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 |
Philip.Hazel
|
2909e2411c
|
Fix (*NO_AUTO_POSSESS)
|
2015-11-05 18:03:16 +00:00 |
Philip.Hazel
|
b7ee0684e3
|
Implement pcre2_set_max_pattern_length()
|
2015-11-05 17:33:39 +00:00 |