diff options
| author | Rich Felker <dalias@aerifal.cx> | 2013-02-01 01:10:59 -0500 | 
|---|---|---|
| committer | Rich Felker <dalias@aerifal.cx> | 2013-02-01 01:10:59 -0500 | 
| commit | ae4b0b96d63fe3cbd70008350f998570c9e91f7f (patch) | |
| tree | f4432dd5c32c3eba67723f6c5a27a8564b05f3cc /src | |
| parent | 725c55528dff9eefbc88a943749f3bc89bcb433f (diff) | |
| download | musl-ae4b0b96d63fe3cbd70008350f998570c9e91f7f.tar.gz | |
revert regex "cleanup" that seems unjustified and may break backtracking
it's not clear to me at the moment whether the code that was removed
(and which is now being re-added) is needed, but it's far from being a
no-op, and i don't want to risk breaking regex in this release.
Diffstat (limited to 'src')
| -rw-r--r-- | src/regex/regexec.c | 3 | 
1 files changed, 3 insertions, 0 deletions
| diff --git a/src/regex/regexec.c b/src/regex/regexec.c index 674c5907..855cef57 100644 --- a/src/regex/regexec.c +++ b/src/regex/regexec.c @@ -596,6 +596,7 @@ tre_tnfa_run_backtrack(const tre_tnfa_t *tnfa, const void *string,       started from. */    int next_c_start;    const char *str_byte_start; +  int pos_start = -1;  #ifdef TRE_MBSTATE    mbstate_t mbstate_start;  #endif /* TRE_MBSTATE */ @@ -675,7 +676,9 @@ tre_tnfa_run_backtrack(const tre_tnfa_t *tnfa, const void *string,    }    state = NULL; +  pos = pos_start;    GET_NEXT_WCHAR(); +  pos_start = pos;    next_c_start = next_c;    str_byte_start = str_byte;  #ifdef TRE_MBSTATE | 
