Mercurial > emacs
changeset 89025:1c45126c0974
(Fchar_equal): Fix for the unibyte case.
author | Kenichi Handa <handa@m17n.org> |
---|---|
date | Tue, 20 Aug 2002 07:56:43 +0000 |
parents | b09549c9663c |
children | 7f85fb19352a |
files | src/editfns.c |
diffstat | 1 files changed, 14 insertions(+), 2 deletions(-) [+] |
line wrap: on
line diff
--- a/src/editfns.c Tue Aug 20 07:21:58 2002 +0000 +++ b/src/editfns.c Tue Aug 20 07:56:43 2002 +0000 @@ -3603,8 +3603,20 @@ /* Do these in separate statements, then compare the variables. because of the way DOWNCASE uses temp variables. */ - i1 = DOWNCASE (XFASTINT (c1)); - i2 = DOWNCASE (XFASTINT (c2)); + i1 = XFASTINT (c1); + if (NILP (current_buffer->enable_multibyte_characters) + && ! ASCII_CHAR_P (i1)) + { + MAKE_CHAR_MULTIBYTE (i1); + } + i2 = XFASTINT (c2); + if (NILP (current_buffer->enable_multibyte_characters) + && ! ASCII_CHAR_P (i2)) + { + MAKE_CHAR_MULTIBYTE (i2); + } + i1 = DOWNCASE (i1); + i2 = DOWNCASE (i2); return (i1 == i2 ? Qt : Qnil); }