update.
[chise/xemacs-chise.git] / src / chartab.c
index 6e12d84..2f5c6b5 100644 (file)
@@ -1740,8 +1740,10 @@ decode_char_table_range (Lisp_Object range, struct chartab_range *outrange)
 {
   if (EQ (range, Qt))
     outrange->type = CHARTAB_RANGE_ALL;
+#ifdef UTF2000
   else if (EQ (range, Qnil))
     outrange->type = CHARTAB_RANGE_DEFAULT;
+#endif
   else if (CHAR_OR_CHAR_INTP (range))
     {
       outrange->type = CHARTAB_RANGE_CHAR;
@@ -2897,6 +2899,7 @@ Store CHARACTER's ATTRIBUTE with VALUE.
     {
       CHECK_CHAR (character);
       value = put_char_ccs_code_point (character, ccs, value);
+      attribute = XCHARSET_NAME (ccs);
     }
   else if (EQ (attribute, Q_decomposition))
     {
@@ -3086,10 +3089,12 @@ Store character's ATTRIBUTES.
        (attributes))
 {
   Lisp_Object rest = attributes;
-  Lisp_Object code = Fcdr (Fassq (Qucs, attributes));
+  Lisp_Object code = Fcdr (Fassq (Qmap_ucs, attributes));
   Lisp_Object character;
 
   if (NILP (code))
+    code = Fcdr (Fassq (Qucs, attributes));
+  if (NILP (code))
     {
       while (CONSP (rest))
        {