Commit Graph

74 Commits

Author SHA1 Message Date
fa8b79bca9 Regex.Defuzz, fix for https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=4615 2018-01-04 18:51:21 +00:00
b13fb44ac5 Regex.Defuzzing: Fix for https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=4659&q=jz.maddock&colspec=ID%20Type%20Component%20Status%20Proj%20Reported%20Owner%20Summary 2018-01-03 18:32:45 +00:00
6246f5ec51 Regex: Set a limit on how many recursions we allow. 2017-11-09 11:23:54 +00:00
f251a98662 Regex: When matching an (*ACCEPT) and skipping forwards, we have to be careful not to stop skipping prematurely if we're inside a lookahead.
Fixes: https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=3493#c2
2017-10-24 19:06:53 +01:00
544e20a339 Regex: Backup and restore internal match_results when saving recursion backtracking info, as well as the state required to restore the recursion stack. Fixes: https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=3478#c1 2017-10-23 18:49:08 +01:00
d97bcfb5dd Fix integer types and signedness:
Fixes https://svn.boost.org/trac10/ticket/13034
2017-07-31 18:51:25 +01:00
22aedd996c Fix iterator comparisons so legacy compilers (sun and VC6) can handle them 2017-03-01 11:33:28 +00:00
c8044ffca0 de-fuzz: more recursive calls that require proper stack unwinding to prevent memory leaks if matching throws. 2017-02-23 09:43:22 +00:00
3d2dc325de de-fuzz: Remove debugging code. 2017-02-22 12:45:48 +00:00
85cd85013d de-fuzz: Memory leak fix: Need to unwind stack when doing recursive call on non-recursive algorithm 2017-02-22 12:43:28 +00:00
b65bf1b459 de-fuzz: make sure recursion stack always has a valid start location for the recursion. 2017-02-21 19:38:36 +00:00
7f89a8f3b8 de-fuzz: add missing typename qualifiers to previous fix. 2017-02-15 19:48:56 +00:00
edd94320c7 de-fuzz: prevent infinite recursion in recursive expressions (case 14). 2017-02-15 19:44:41 +00:00
9059bfb5c6 Fix case-sensitivity change behaviour.
See https://svn.boost.org/trac/boost/ticket/11205.
Update docs to match.
2016-03-14 19:22:18 +00:00
a307fd7077 Fix msvc warning. 2015-10-06 13:17:01 +01:00
f617c73e9a Fix some GCC and clang warnings introduced by the new code 2015-10-06 12:46:09 +01:00
7a4e883675 Get THEN working for non-recursive implementation.
Fix various bugs in the other verbs exposed by new tests.
2015-10-04 19:28:25 +01:00
9a36e035f2 Add support for PRUNE and SKIP (no MARK's though). 2015-10-01 18:34:59 +01:00
83140ddbed Fix up recursive implementation of ACCEPT and COMMIT. 2015-09-30 18:47:59 +01:00
b208ef4eed Get commit working in recursive mode. 2015-09-29 19:20:09 +01:00
c281c9cc40 Add COMMIT support plus lots of tests. 2015-09-29 17:40:43 +01:00
2580fb035f Add support for ACCEPT verb. 2015-09-26 18:47:39 +01:00
b557febb0e Start adding Perl verb support with FAIL as the first supported verb. 2015-09-25 19:30:20 +01:00
6ffcc5ede0 Change detail namespace.
Big search and replace to change name of internal namepace so it's mangled with the Boost version number - the aim is to reduce the chances of mixing different header and library versions.
2015-04-04 19:10:37 +01:00
297e87360c Fix for bug in recursive expressions, see http://lists.boost.org/Archives/boost/2015/03/221018.php 2015-03-24 19:09:17 +00:00
82e0fc2222 Optimise iterator advances for slow (non-random access) iterators.
[SVN r84999]
2013-07-10 16:10:44 +00:00
4162776575 Add missing optimization for leading .* repeats.
Fixes #7758.

[SVN r81705]
2012-12-04 16:51:18 +00:00
1f016f6999 Fix some more GCC warnings.
Fix previous warning suppression which broke tests with GCC.
Refs #6863.

[SVN r78480]
2012-05-15 16:09:12 +00:00
fa96f4edf1 Change "id" to "idx" to be Objective C++ compatible.
Fixes #2306.
Fixes #4132.
Fixes #4191.

[SVN r61789]
2010-05-05 17:40:07 +00:00
50892585d3 Remove dead code.
[SVN r59415]
2010-02-01 13:12:50 +00:00
d686c89333 Improve regex performance on msvc by removing statically allocated recursion stack, and using a std::vector instead.
[SVN r59414]
2010-02-01 13:10:28 +00:00
0e1e9804da Fix bug that effects recursive expressions combined with repeats.
[SVN r58722]
2010-01-05 18:04:08 +00:00
6e1f3dcceb Improved error messages generated for thrown exceptions.
Suppressed "gcc -Wall -Wextra -pedantic" and "msvc /W4" warnings.
Updated and rebuilt docs.


[SVN r57451]
2009-11-07 15:32:45 +00:00
5a6bc29d7c Added initial support for recursive expressions.
Updated docs and tests accordingly.

[SVN r54994]
2009-07-17 10:23:50 +00:00
30941e330d Added support for \g \K and \R.
[SVN r52592]
2009-04-25 17:32:49 +00:00
48492bb9b5 Fixes #2713: change table initialisation so that it's initialised statically.
[SVN r51103]
2009-02-08 16:30:45 +00:00
d70f98e658 Fixes #2306.
Change "id" to "state_id".

[SVN r48751]
2008-09-12 12:40:23 +00:00
1012d28c32 Fix for issue #2188.
[SVN r48185]
2008-08-17 11:15:07 +00:00
0915f19c03 Extended leading repeat optimization to more cases.
[SVN r42992]
2008-01-27 18:43:35 +00:00
4a147d198d Fixes track issue #775, see http://svn.boost.org/trac/boost/ticket/775.
All regex code should now compile warning free at level 4 with MSCV.

[SVN r38864]
2007-08-23 09:06:24 +00:00
e7b65221d1 Tidied up msvc-warning suppression code.
[SVN r38562]
2007-08-10 10:11:03 +00:00
c4d13296e6 Fix for non-greedy repeats and partial matches not working correctly in all cases.
[SVN r34027]
2006-05-19 13:06:19 +00:00
ffa362ce17 Consolidated patches and performance tweeks.
[SVN r31492]
2005-10-27 10:24:50 +00:00
c39176085b Fixed VC7.1-STLport config setup so it works with /Zc:wchar_t
Re-ordered code in static_mutex.hpp to satisfy SGI IRIX.
Added some additional #includes to satisfy SGI Irix.
Fixed strange bug where some non-greedy repeats could repeat more times than permitted.
Fixed return value from basic_regex<>::empty().
Fixed return value from basic_regex<>::expression() and basic_regex<>::size() when the expression is invalid.


[SVN r30604]
2005-08-19 16:10:11 +00:00
1991c202ed Remove dead files.
Strip tabs from files.
Fix MSVC-specific workaround that doesn't work on Win64.


[SVN r30002]
2005-07-12 09:49:21 +00:00
d7e194585d More std::distance fixes for Sunpro.
Changed Dr John Maddock to John Maddock.


[SVN r26791]
2005-01-21 17:22:39 +00:00
2a248d1f87 Changed assert's to BOOST_ASSERT's.
Made array sizes explicit to fix MWCW problems.


[SVN r26723]
2005-01-18 12:52:40 +00:00
71a0e020e2 merged changes in regex5 branch
[SVN r26692]
2005-01-13 17:06:21 +00:00
de0ab9092a Fix for .{n,} failing in partial matches.
Fix for [\x0-\xff] failing in wide character expressions.


[SVN r26566]
2004-12-21 17:07:46 +00:00
ba148bae42 64-bit portability fix
[SVN r23065]
2004-06-09 12:12:42 +00:00