From 9281d0779766a39f743240e33dd46a1accf0f7fa Mon Sep 17 00:00:00 2001 From: Kenichi Handa Date: Tue, 3 Sep 2002 04:06:33 +0000 Subject: [PATCH] (Fbyte_code): Convert a unibyte character to multibyte if necessary. --- src/bytecode.c | 15 +++++++++++---- 1 file changed, 11 insertions(+), 4 deletions(-) diff --git a/src/bytecode.c b/src/bytecode.c index 6c4e34ddaa7..df6eb266eb9 100644 --- a/src/bytecode.c +++ b/src/bytecode.c @@ -1433,10 +1433,17 @@ If the third argument is incorrect, Emacs may crash. */) break; case Bchar_syntax: - BEFORE_POTENTIAL_GC (); - CHECK_NUMBER (TOP); - AFTER_POTENTIAL_GC (); - XSETFASTINT (TOP, syntax_code_spec[(int) SYNTAX (XINT (TOP))]); + { + int c; + + BEFORE_POTENTIAL_GC (); + CHECK_CHARACTER (TOP); + AFTER_POTENTIAL_GC (); + c = XFASTINT (TOP); + if (NILP (current_buffer->enable_multibyte_characters)) + MAKE_CHAR_MULTIBYTE (c); + XSETFASTINT (TOP, syntax_code_spec[(int) SYNTAX (c)]); + } break; case Bbuffer_substring: -- 2.39.5