From df5a9e28234919326128db50c13467d971871cbf Mon Sep 17 00:00:00 2001 From: matz Date: Tue, 18 May 1999 06:06:17 +0000 Subject: mbc bug in regex git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_3@471 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- regex.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) (limited to 'regex.c') diff --git a/regex.c b/regex.c index 29e720776b..3199fe4f9e 100644 --- a/regex.c +++ b/regex.c @@ -2968,9 +2968,11 @@ re_search(bufp, string, size, startpos, range, regs) while (range > 0) { c = *p++; if (ismbchar(c)) { - int len = mbclen(c) - 1; + int len; + if (fastmap[c]) break; + len = mbclen(c) - 1; while (len--) { c = *p++; range--; @@ -2981,8 +2983,8 @@ re_search(bufp, string, size, startpos, range, regs) else { if (fastmap[MAY_TRANSLATE() ? translate[c] : c]) break; - range--; } + range--; } startpos_adjust: startpos += irange - range; -- cgit v1.2.3