Mercurial > emacs
diff src/editfns.c @ 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 | 1260416c7819 |
children | 63f566c131d7 |
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); }