From 2f425990e72b64cf50d718e564dd3fb5b124b2d7 Mon Sep 17 00:00:00 2001 From: Karl Heuer Date: Thu, 10 Dec 1998 03:09:12 +0000 Subject: [PATCH] (re_compile_fastmap): For anychar, set all fastmap elements for all possible unibyte chars (except newline). --- regex.c | 18 +++++------------- 1 file changed, 5 insertions(+), 13 deletions(-) diff --git a/regex.c b/regex.c index 0dcdedec51..a700c887da 100644 --- a/regex.c +++ b/regex.c @@ -3381,21 +3381,13 @@ re_compile_fastmap (bufp) { int fastmap_newline = fastmap['\n']; - /* `.' matches anything (but if bufp->multibyte is - nonzero, matches `\000' .. `\127' and possible multibyte - character) ... */ + /* `.' matches anything, except perhaps newline. + Even in a multibyte buffer, it should match any + conceivable byte value for the fastmap. */ if (bufp->multibyte) - { - simple_char_max = 0x80; - - for (j = 0x80; j < 0xA0; j++) - if (BASE_LEADING_CODE_P (j)) - fastmap[j] = 1; - match_any_multibyte_characters = true; - } - else - simple_char_max = (1 << BYTEWIDTH); + match_any_multibyte_characters = true; + simple_char_max = (1 << BYTEWIDTH); for (j = 0; j < simple_char_max; j++) fastmap[j] = 1; -- 2.30.2