Commit Graph

244 Commits

Author SHA1 Message Date
Zoltán Herczeg 53e25208d3 Improve options passing. 2015-04-20 13:04:02 +00:00
Philip.Hazel e47a6ebe87 Implement PCRE2_NEVER_BACKSLASH_C. 2015-04-13 17:29:05 +00:00
Philip.Hazel 3e1748390b Fix very slow find_minlength when mutual recursion is present. 2015-04-13 09:13:39 +00:00
Philip.Hazel f123833bdb Fix other cases where backtracking after \C could cause a crash. 2015-04-08 16:53:22 +00:00
Philip.Hazel aa8ee3ded5 Fix backtracking bug for \C\X* in UTF mode. 2015-04-08 16:33:58 +00:00
Philip.Hazel 7105d249f6 Fix handling of global matching in pcre2test when a lookbehind assertion
contains \K.
2015-04-06 12:16:36 +00:00
Philip.Hazel cda8384a95 Fix pcre2grep loop provoked by \K in a lookbehind assertion in a non-anchored
pattern.
2015-04-03 11:14:19 +00:00
Philip.Hazel ade67323e7 Fix stack overflow instead of error diagnosis for mutual recursion within
lookbehind assertion.
2015-04-01 15:37:54 +00:00
Zoltán Herczeg 9300cb6418 Set auto-possessify limit to 1000 from 10000 (to match the Changelog). 2015-04-01 13:56:11 +00:00
Philip.Hazel 2f265daed0 Tidy the types of some integer variables. 2015-03-31 16:10:01 +00:00
Philip.Hazel 6a2cb0d774 Fix diagnosis of negative relative references to non-existent groups. 2015-03-31 15:01:25 +00:00
Philip.Hazel 2327a5860b Fix bad compile for possessive quantifier on group containing a subroutine
reference.
2015-03-29 17:34:04 +00:00
Philip.Hazel 63cab0dba9 Fix non-diagnosis of syntax error for (?(?< when not followed by ! or =. 2015-03-29 15:40:45 +00:00
Philip.Hazel 99bb61e903 Fix comment between recursion and quantifier bug. 2015-03-29 11:15:32 +00:00
Philip.Hazel 6b6e611b39 Fix mutual recursion inside other parentheses stack overflow bug. 2015-03-27 17:45:02 +00:00
Philip.Hazel cd85fae3c6 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
Philip.Hazel a066d12022 Add recursion limit to auto-possessification code. 2015-03-25 17:01:04 +00:00
Philip.Hazel a4ceadbf47 Fix bugs when (?!) is used as a condition. 2015-03-24 10:21:34 +00:00
Zoltán Herczeg 69cda6bc70 Fix JIT compilation of conditional blocks whose assertion is converted to (*FAIL). 2015-03-24 08:43:52 +00:00
Philip.Hazel 4e61019ffe Implement pcre2_callout_enumerate(). 2015-03-23 15:52:08 +00:00
Philip.Hazel b15698b077 Fix data overrun for /(?(?C)/ 2015-03-20 12:37:28 +00:00
Philip.Hazel aa8d7342da Test binary zero in callout strings; change offset to PCRE2_SIZE; some
documentation tidies.
2015-03-16 15:38:26 +00:00
Philip.Hazel 15e034c9c2 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
Philip.Hazel b2c67082bd Fix crash in pcre2test for some callouts with string arguments. 2015-03-14 10:47:43 +00:00
Philip.Hazel baf08a3d37 Support manual callout with string argument at start of condition. 2015-03-12 17:00:18 +00:00
Zoltán Herczeg bccfdcb172 Assertion code generator in JIT has been optimized. 2015-03-12 11:21:38 +00:00
Philip.Hazel d0cf279d87 Code for callouts with string arguments. Documentation not yet updated. 2015-03-11 17:44:16 +00:00
Philip.Hazel b6bc8c6328 Final file tidies for 10.10 release. 2015-03-06 15:08:29 +00:00
Zoltán Herczeg 4161891b42 Fix compiler errors when JIT is not enabled. 2015-03-06 12:49:18 +00:00
Philip.Hazel 54396a364d Fix bad compile of patterns like /[A-`]/i,utf where the range contains
characters with multiple other cases and the ranges adjoin.
2015-03-06 11:57:06 +00:00
Zoltán Herczeg 94802eb0d9 Remove computing the JIT read-only data size in advance and use on-demand memory allocation. 2015-03-06 07:41:36 +00:00
Philip.Hazel c372df5dce Fix compile error for forward reference subroutine call within a group that
also contained a recursive back reference.
2015-03-01 18:34:05 +00:00
Philip.Hazel ea03932668 Fix "internal error" bug caused by patterns like "((?2){0,1999}())?". 2015-02-28 11:31:51 +00:00
Philip.Hazel 67800ba810 Final file tidies for 10.10-RC2. 2015-02-26 17:36:29 +00:00
Philip.Hazel 20c75b2f42 Add RunTest.bat for testing under Windows, with appropriate test files. 2015-02-25 17:19:28 +00:00
Philip.Hazel 438e51958a Fix DECL/DEFN typo that affects Windows. 2015-02-24 14:21:28 +00:00
Zoltán Herczeg 928766f727 JIT compiler update. 2015-02-23 07:50:53 +00:00
Philip.Hazel d226c5ea4d Improve error message for pcre2test stack setting failure; also %ld should
really be %lu throughout.
2015-02-21 18:53:51 +00:00
Philip.Hazel 5878c2c3a5 Two more 32-bit warnings fixed. 2015-02-21 17:26:24 +00:00
Philip.Hazel 07e25a17df Fix compiler warnings for pcre2test on 32-bit systems. 2015-02-21 17:25:12 +00:00
Philip.Hazel 49a7eada2d Final source file tidies for 10.10-RC1 2015-02-20 11:20:40 +00:00
Philip.Hazel 3d9cc76a52 Fix bug for groups like (a)*+ (possessive, zero minimum) when the ovector was
too small to capture.
2015-02-11 10:06:09 +00:00
Philip.Hazel 154bc83cb5 Fix replacement bug in pcre2_substitute(). 2015-02-10 12:48:45 +00:00
Philip.Hazel 9059444834 Fix alignement problem in deserialization on 64-bit SPARC. 2015-02-07 16:22:48 +00:00
Philip.Hazel 2e36497404 Fix compile loop for subroutine reference after class such as [^\ff]. 2015-02-06 17:51:55 +00:00
Philip.Hazel ad452f4036 Give an internal error for a bad opcode during auto-possessification. This can
stop a loop when compiling an invalid UTF string with PCRE2_NO_UTF_CHECK.
2015-02-06 16:47:15 +00:00
Philip.Hazel 0011aaa712 Disallow quantification of assertion conditions, for Perl compatibility (and in
any case it didn't always work).
2015-01-28 17:31:11 +00:00
Philip.Hazel 6c8945b8d8 Fix mutual back reference recursion segfault. 2015-01-28 11:28:53 +00:00
Philip.Hazel 911b800984 Fix incorrect size calculation when a reference to a duplicate name occurs
in a part of the pattern where PCRE2_DUPNAMES is not set.
2015-01-27 17:21:32 +00:00
Philip.Hazel ca77bdd5c4 Implement (*NO_JIT) 2015-01-26 14:57:27 +00:00
Philip.Hazel 5438fc8a6a Add serialization functions and tests with updated pcre2test. Fix
PCRE2_INFO_SIZE issues.
2015-01-23 16:51:47 +00:00
Philip.Hazel d4daaf966d Fix conditional group backreference bug. 2015-01-13 16:01:24 +00:00
Philip.Hazel c702fd65c8 Final file tides for the 10.00 release. 2015-01-05 16:02:11 +00:00
Philip.Hazel 5a18651441 Add PCRE2_NO_DOTSTAR_ANCHOR and revise documentation for .* optimizing. 2015-01-02 17:09:16 +00:00
Philip.Hazel 019e115060 Ensure that the function op_recurse_ovecsave is not inlined when compiled by
gcc.
2014-12-31 11:15:03 +00:00
Philip.Hazel b8dbae1474 Improvements for substring handling with partial matches. 2014-12-22 17:33:10 +00:00
Philip.Hazel 2a5767d757 File tidies for 10.00-RC2. 2014-12-19 09:55:25 +00:00
Philip.Hazel e34c44e2aa Small code tidy. 2014-12-15 11:17:05 +00:00
Philip.Hazel cb8865d247 Update and improve substring handling and its documentation. 2014-12-14 17:17:06 +00:00
Philip.Hazel a85d15cbd1 Improve interfaces to substring functions, and fix bugs. 2014-12-13 17:43:26 +00:00
Philip.Hazel a119d6f974 (1) uint32_t for substring number args; (2) correct PRIV(memctl_malloc)
definition for Windows; (3) remove unwanted PCRE2_EXP_DATA_DEFN; (4) 
documentation updates.
2014-12-01 16:14:53 +00:00
Zoltán Herczeg bb3b7927f3 Next attempt to fix the previous bug. 2014-11-30 10:05:41 +00:00
Zoltán Herczeg d788c58e6b Fix jit_callback check in JIT. 2014-11-30 10:01:49 +00:00
Philip.Hazel a99e048b4f File tidies for 10.00-RC1. 2014-11-28 13:58:17 +00:00
Philip.Hazel caf78231ec Use allocator from code for pcre2_match_data_create_from_pattern if NULL
passed.
2014-11-28 13:23:40 +00:00
Philip.Hazel 161cd17ba0 Move context argument to last in pcre2_jit_stack_create(). 2014-11-28 12:46:16 +00:00
Philip.Hazel 9fcdf2cc6f Add user data to recursion guard; get ready for RC1 (again) 2014-11-26 16:51:53 +00:00
Philip.Hazel 312375057b Change callouts to pass the user data as a separate argument. 2014-11-25 17:35:01 +00:00
Philip.Hazel d13f52c1c4 Tidy up API for pcre2_config. 2014-11-25 11:55:07 +00:00
Zoltán Herczeg bb6bf69a6e Move all offset initialization to one place. 2014-11-25 09:06:27 +00:00
Philip.Hazel 0acc416ed1 Final preparations for 10.00-RC1 2014-11-24 15:31:28 +00:00
Philip.Hazel 91f2e97474 More documentation and test updates. 2014-11-23 18:38:38 +00:00
Philip.Hazel eb4fffbbf4 More documentation and file tidies. 2014-11-21 16:45:06 +00:00
Philip.Hazel ba1e2e0cbb Add additional tests and fix some compiler warnings; update stack information. 2014-11-21 12:19:37 +00:00
Philip.Hazel 69176e79a5 Eliminate a compiler warning. 2014-11-20 17:39:28 +00:00
Philip.Hazel eea35d0cab Fix zero-repeated assertion-as-condition bug. 2014-11-19 11:17:20 +00:00
Philip.Hazel 819e175659 Eliminate compiler warning 2014-11-18 18:31:39 +00:00
Philip.Hazel 07f8372202 Further substitution tests (code and data), and more documentation. 2014-11-14 18:41:20 +00:00
Philip.Hazel adc7be2d3a Get rid of remaining FIXMEs in the code; implement JIT compile timing. 2014-11-12 17:46:02 +00:00
Philip.Hazel c19bd9a377 Substitution tests and documentation. 2014-11-12 16:57:56 +00:00
Philip.Hazel b3ac0ffb32 Substitute code update and documentation. 2014-11-11 16:51:07 +00:00
Philip.Hazel bb34dede56 Config returns code unit count for strings - didn't always. 2014-11-11 10:50:31 +00:00
Philip.Hazel bcf59568aa Typos in non-JIT compile mode. 2014-11-11 10:21:23 +00:00
Philip.Hazel f1c6ee730a Code for pcre2_substitute(), and tests. 2014-11-11 10:19:23 +00:00
Zoltán Herczeg 1bbc86fe67 JIT compiler update. 2014-11-09 07:23:55 +00:00
Philip.Hazel a9f31c3377 Preliminary substitute function (not yet tested or documented). 2014-11-08 16:09:24 +00:00
Philip.Hazel d7495ff642 Finish off changes of JIT stack assignment 2014-11-08 16:07:30 +00:00
Zoltán Herczeg 94c0deddd3 Remove pcre2_jit_stack argument from jit_match. 2014-11-07 12:12:52 +00:00
Zoltán Herczeg 7d9caa5b41 The pcre2_jit_stack_assign is changed to use the matching context. 2014-11-06 14:37:09 +00:00
Philip.Hazel e3e4131379 Fix bug for (*ACCEPT) inside a capturing group. 2014-11-05 16:05:19 +00:00
Philip.Hazel 44ef2c3401 Make --enable-unicode the default. 2014-11-03 18:27:56 +00:00
Philip.Hazel 08e3107cbe Changed jit_stack_alloc to jit_stack_create. 2014-11-03 17:13:00 +00:00
Philip.Hazel dea68c01fb Add tests for JIT fast path. 2014-11-02 15:34:31 +00:00
Philip.Hazel a15a4de10b Recognize '-' as standard input in pcre2test. 2014-10-31 15:57:47 +00:00
Philip.Hazel 8aa511a98b Improve test coverage; minor typo in JIT test and other minor buglets fixed. 2014-10-31 12:34:34 +00:00
Philip.Hazel 3989f00461 Convert the special "EBCDIC on an ASCII system" test. 2014-10-26 18:00:19 +00:00
Philip.Hazel 56805a1246 Remove some unused code and a spurious comment and reword one message. 2014-10-25 14:28:43 +00:00
Philip.Hazel b23ec7e1f5 More per-function documentation; revised perltest.sh replaces perltest.pl. 2014-10-25 14:16:46 +00:00
Philip.Hazel db8480a1e0 A lot more documentation. 2014-10-21 16:33:30 +00:00
Philip.Hazel c3799e750f Tidy a lot of files (remove trailing spaces) 2014-10-20 17:28:49 +00:00