(regex_compile): Don't call SET_LIST_BIT with a
authorKenichi Handa <handa@m17n.org>
Tue, 28 Nov 2006 01:10:42 +0000 (01:10 +0000)
committerKenichi Handa <handa@m17n.org>
Tue, 28 Nov 2006 01:10:42 +0000 (01:10 +0000)
multibyte character.

src/ChangeLog
src/regex.c

index f5b2efd..3d3e844 100644 (file)
@@ -1,3 +1,8 @@
+2006-11-28  Kenichi Handa  <handa@m17n.org>
+
+       * regex.c (regex_compile): Don't call SET_LIST_BIT with a
+       multibyte character.
+
 2006-11-27  Chong Yidong  <cyd@stupidchicken.com>
 
        * s/aix4-2.h: Undefine _NO_PROTO.  Suggested by Joe Buehler.
index 3299134..7967a48 100644 (file)
@@ -2939,7 +2939,8 @@ regex_compile (pattern, size, syntax, bufp)
                         for (ch = 0; ch < 1 << BYTEWIDTH; ++ch)
                          {
                            int translated = TRANSLATE (ch);
-                           if (re_iswctype (btowc (ch), cc))
+                           if (translate < 1 << BYTEWIDTH
+                               && re_iswctype (btowc (ch), cc))
                              SET_LIST_BIT (translated);
                          }