From 2bc20f0b55cd7e20da31c05aa7c1711ba3786c9a Mon Sep 17 00:00:00 2001 From: Kenichi Handa Date: Thu, 27 Nov 2008 08:00:43 +0000 Subject: [PATCH] (enum charset_method): Delete CHARSET_METHOD_MAP_DEFERRED. (DECODE_CHAR): Check if the decoder vector is ready. (ENCODE_CHAR): Check if the encoder char-table is ready. (maybe_unify_char): Extern it. --- src/charset.h | 20 +++++++++----------- 1 file changed, 9 insertions(+), 11 deletions(-) diff --git a/src/charset.h b/src/charset.h index a49b2d36dec..1dac7add242 100644 --- a/src/charset.h +++ b/src/charset.h @@ -66,9 +66,9 @@ enum charset_attr_index /* Property list of the charset. */ charset_plist, - /* If the method of the charset is `MAP_DEFERRED', the value is a - mapping vector or a file name that contains mapping vector. - Otherwise, nil. */ + /* If the method of the charset is `MAP', the value is a mapping + vector or a file name that contains mapping vector. Otherwise, + nil. */ charset_map, /* If the method of the charset is `MAP', the value is a vector @@ -134,11 +134,6 @@ enum charset_method conversion. */ CHARSET_METHOD_MAP, - /* Same as above but decoder and encoder are loaded from a file on - demand. Once loaded, the method is changed to - CHARSET_METHOD_MAP. */ - CHARSET_METHOD_MAP_DEFERRED, - /* A charset of this method is a subset of another charset. */ CHARSET_METHOD_SUBSET, @@ -410,9 +405,10 @@ extern Lisp_Object Vchar_charset_set; ? (code) - (charset)->min_code + (charset)->code_offset \ : decode_char ((charset), (code))) \ : (charset)->method == CHARSET_METHOD_MAP \ - ? ((charset)->code_linear_p \ + ? (((charset)->code_linear_p \ + && VECTORP (CHARSET_DECODER (charset))) \ ? XINT (AREF (CHARSET_DECODER (charset), \ - (code) - (charset)->min_code)) \ + (code) - (charset)->min_code)) \ : decode_char ((charset), (code))) \ : decode_char ((charset), (code))) @@ -445,7 +441,8 @@ extern Lisp_Object charset_work; ? (c) - (charset)->code_offset + (charset)->min_code \ : encode_char ((charset), (c))) \ : (charset)->method == CHARSET_METHOD_MAP \ - ? ((charset)->compact_codes_p \ + ? (((charset)->compact_codes_p \ + && CHAR_TABLE_P (CHARSET_ENCODER (charset))) \ ? (charset_work = CHAR_TABLE_REF (CHARSET_ENCODER (charset), (c)), \ (NILP (charset_work) \ ? (charset)->invalid_code \ @@ -538,6 +535,7 @@ extern int charset_unibyte; extern struct charset *char_charset P_ ((int, Lisp_Object, unsigned *)); extern Lisp_Object charset_attributes P_ ((int)); +extern int maybe_unify_char P_ ((int, Lisp_Object)); extern int decode_char P_ ((struct charset *, unsigned)); extern unsigned encode_char P_ ((struct charset *, int)); extern int string_xstring_p P_ ((Lisp_Object)); -- 2.39.2