From 9816585ded614fa87be5a2ecfda6dc16c60beb2c Mon Sep 17 00:00:00 2001 From: tomo Date: Wed, 19 Jul 2000 02:59:22 +0000 Subject: [PATCH] (byte_table_same_value_p): Use `internal_equal' instead of `EQ'. (put_byte_table): Likewise. (char_id_table_equal): Use `get_byte_table' [new implementation]. --- src/mule-charset.c | 17 ++++++++++++----- 1 file changed, 12 insertions(+), 5 deletions(-) diff --git a/src/mule-charset.c b/src/mule-charset.c index f1344c5..222ce97 100644 --- a/src/mule-charset.c +++ b/src/mule-charset.c @@ -610,7 +610,7 @@ byte_table_same_value_p (Lisp_Object obj) for (i = 1; i < 256; i++) { - if (!EQ (bte->property[i], v0)) + if (!internal_equal (bte->property[i], v0, 0)) return 0; } return -1; @@ -712,7 +712,7 @@ put_byte_table (Lisp_Object table, unsigned char idx, Lisp_Object value) return value; } } - else if (!EQ (table, value)) + else if (!internal_equal (table, value, 0)) { if (UINT8_VALUE_P (table) && UINT8_VALUE_P (value)) { @@ -766,10 +766,17 @@ print_char_id_table (Lisp_Object obj, Lisp_Object printcharfun, int escapeflag) static int char_id_table_equal (Lisp_Object obj1, Lisp_Object obj2, int depth) { - Lisp_Char_ID_Table *cte1 = XCHAR_ID_TABLE (obj1); - Lisp_Char_ID_Table *cte2 = XCHAR_ID_TABLE (obj2); + Lisp_Object table1 = XCHAR_ID_TABLE (obj1)->table; + Lisp_Object table2 = XCHAR_ID_TABLE (obj2)->table; + int i; - return byte_table_equal (cte1->table, cte2->table, depth + 1); + for (i = 0; i < 256; i++) + { + if (!internal_equal (get_byte_table (table1, i), + get_byte_table (table2, i), 0)) + return 0; + } + return -1; } static unsigned long -- 1.7.10.4