# HG changeset patch # User Kenichi Handa # Date 965959019 0 # Node ID db737e34fc36e4600dd460c31cc50d14cfed5976 # Parent c10a2693392914a522ddb7addde311dc46b0027e (regex_compile) : Pay attention to multibyteness. (analyse_first) : Setup fastmap correctly for eight-bit-control characters. diff -r c10a26933929 -r db737e34fc36 src/regex.c --- a/src/regex.c Fri Aug 11 01:55:36 2000 +0000 +++ b/src/regex.c Fri Aug 11 01:56:59 2000 +0000 @@ -3064,7 +3064,12 @@ GET_BUFFER_SPACE (MAX_MULTIBYTE_LENGTH); { - int len = CHAR_STRING (c, b); + int len; + + if (multibyte) + len = CHAR_STRING (c, b); + else + *b = c, len = 1; b += len; (*pending_exact) += len; } @@ -3375,7 +3380,15 @@ with `break'. */ case exactn: - if (fastmap) fastmap[p[1]] = 1; + if (fastmap) + { + int c = RE_STRING_CHAR (p + 1, pend - p); + + if (SINGLE_BYTE_CHAR_P (c)) + fastmap[c] = 1; + else + fastmap[p[1]] = 1; + } break;