From 1c305bc1f58f34d89f5d975a52cfc66b3df7715a Mon Sep 17 00:00:00 2001 From: Kenichi Handa Date: Fri, 6 Feb 2004 11:05:20 +0000 Subject: [PATCH] (CHAR_CHARSET_P): Fix for the case that the method is subset or superset. --- src/charset.h | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/src/charset.h b/src/charset.h index 18fdcfb16c0..0965bb29d2c 100644 --- a/src/charset.h +++ b/src/charset.h @@ -110,8 +110,8 @@ enum charset_attr_index charset_unify_map, /* If characters in the charset must be unified Unicode, the value - is a char table that maps a character code in the charset to - the corresponding Unicode character. */ + is a char table that maps a unified Unicode character code to + the non-unified character code in the charset. */ charset_deunifier, /* The length of the charset attribute vector. */ @@ -484,7 +484,9 @@ extern int iso_charset_table[ISO_MAX_DIMENSION][ISO_MAX_CHARS][ISO_MAX_FINAL]; /* 1 iff CHARSET may contain the character C. */ #define CHAR_CHARSET_P(c, charset) \ ((ASCII_CHAR_P (c) && (charset)->ascii_compatible_p) \ - || (CHARSET_UNIFIED_P (charset) \ + || ((CHARSET_UNIFIED_P (charset) \ + || (charset)->method == CHARSET_METHOD_SUBSET \ + || (charset)->method == CHARSET_METHOD_SUPERSET) \ ? encode_char ((charset), (c)) != (charset)->invalid_code \ : (CHARSET_FAST_MAP_REF ((c), (charset)->fast_map) \ && ((charset)->method == CHARSET_METHOD_OFFSET \ -- 2.39.5