Mercurial > emacs
changeset 88584:f4f7b1532dc3
(Fdefine_charset_internal): Fix bug for the case of re-defining a
charset. If the charset has :emacs-mule-id, setup emacs_mule_bytes.
author | Kenichi Handa <handa@m17n.org> |
---|---|
date | Tue, 21 May 2002 04:22:33 +0000 |
parents | 516e1ece0477 |
children | c7772f702227 |
files | src/charset.c |
diffstat | 1 files changed, 4 insertions(+), 2 deletions(-) [+] |
line wrap: on
line diff
--- a/src/charset.c Mon May 20 19:10:41 2002 +0000 +++ b/src/charset.c Tue May 21 04:22:33 2002 +0000 @@ -888,6 +888,7 @@ if (charset.hash_index >= 0) { new_definition_p = 0; + id = XFASTINT (CHARSET_SYMBOL_ID (args[charset_arg_name])); HASH_VALUE (hash_table, charset.hash_index) = attrs; } else @@ -903,11 +904,10 @@ sizeof (struct charset) * charset_table_size)); } id = charset_table_used++; - ASET (attrs, charset_id, make_number (id)); new_definition_p = 1; } - + ASET (attrs, charset_id, make_number (id)); charset.id = id; charset_table[id] = charset; @@ -923,6 +923,8 @@ if (charset.emacs_mule_id >= 0) { emacs_mule_charset[charset.emacs_mule_id] = CHARSET_FROM_ID (id); + if (charset.emacs_mule_id < 0xA0) + emacs_mule_bytes[charset.emacs_mule_id] = charset.dimension + 1; if (new_definition_p) Vemacs_mule_charset_list = nconc2 (Vemacs_mule_charset_list, Fcons (make_number (id), Qnil));