diff options
author | Richard M. Stallman <[email protected]> | 1998-05-25 20:14:54 +0000 |
---|---|---|
committer | Richard M. Stallman <[email protected]> | 1998-05-25 20:14:54 +0000 |
commit | 33c46939565fcaa1212177953baf2823046b96bd (patch) | |
tree | 1cfcf266e6eb08ba1e9acef9badd14380753cb5d /src/regex.c | |
parent | bbcac09c81753d00741a0fe29dfa8f58e409a45b (diff) |
(re_search_2): Don't use ++ inside RE_TRANSLATE.
(re_match_2_internal): Likewise.
Diffstat (limited to 'src/regex.c')
-rw-r--r-- | src/regex.c | 17 |
1 files changed, 12 insertions, 5 deletions
diff --git a/src/regex.c b/src/regex.c index ed4cfc9d95..a638e1734d 100644 --- a/src/regex.c +++ b/src/regex.c @@ -3807,12 +3807,18 @@ re_search_2 (bufp, string1, size1, string2, size2, startpos, range, regs, stop) else while (range > lim && !fastmap[(unsigned char) - RE_TRANSLATE (translate, (unsigned char) *d++)]) - range--; + RE_TRANSLATE (translate, (unsigned char) *d)]) + { + d++; + range--; + } } else - while (range > lim && !fastmap[(unsigned char) *d++]) - range--; + while (range > lim && !fastmap[(unsigned char) *d]) + { + d++; + range--; + } startpos += irange - range; } @@ -4526,9 +4532,10 @@ re_match_2_internal (bufp, string1, size1, string2, size2, pos, regs, stop) do { PREFETCH (); - if ((unsigned char) RE_TRANSLATE (translate, (unsigned char) *d++) + if ((unsigned char) RE_TRANSLATE (translate, (unsigned char) *d) != (unsigned char) *p++) goto fail; + d++; } while (--mcnt); } |