emacs-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Emacs-diffs] emacs/src charset.h


From: Kenichi Handa
Subject: [Emacs-diffs] emacs/src charset.h
Date: Thu, 27 Nov 2008 08:00:43 +0000

CVSROOT:        /cvsroot/emacs
Module name:    emacs
Changes by:     Kenichi Handa <handa>   08/11/27 08:00:43

Modified files:
        src            : charset.h 

Log message:
        (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.

CVSWeb URLs:
http://cvs.savannah.gnu.org/viewcvs/emacs/src/charset.h?cvsroot=emacs&r1=1.94&r2=1.95

Patches:
Index: charset.h
===================================================================
RCS file: /cvsroot/emacs/emacs/src/charset.h,v
retrieving revision 1.94
retrieving revision 1.95
diff -u -b -r1.94 -r1.95
--- charset.h   23 May 2008 10:45:38 -0000      1.94
+++ charset.h   27 Nov 2008 08:00:43 -0000      1.95
@@ -66,9 +66,9 @@
     /* 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 @@
        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,7 +405,8 @@
       ? (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))                  \
       : decode_char ((charset), (code)))                               \
@@ -445,7 +441,8 @@
       ? (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 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));




reply via email to

[Prev in Thread] Current Thread [Next in Thread]