From: Richard Stallman Date: Mon, 25 May 1998 20:14:54 +0000 (+0000) Subject: (re_search_2): Don't use ++ inside RE_TRANSLATE. X-Git-Tag: cvs-readonly~7791 X-Git-Url: http://erislabs.net/gitweb/?a=commitdiff_plain;h=f6fc39af8d13a8c99ba533c9fb06f860d9ed4690;p=gnulib.git (re_search_2): Don't use ++ inside RE_TRANSLATE. (re_match_2_internal): Likewise. --- diff --git a/regex.c b/regex.c index ed4cfc9d9..a638e1734 100644 --- a/regex.c +++ b/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); }