From c347a1c319586ae6de39bdc28fb5c33af3384885 Mon Sep 17 00:00:00 2001 From: Gerd Moellmann Date: Wed, 4 Jul 2001 07:42:36 +0000 Subject: [PATCH] (x_produce_glyphs): Don't convert multibyte characters to unibyte characters in unibyte buffers. --- src/ChangeLog | 5 +++++ src/xterm.c | 6 ++---- 2 files changed, 7 insertions(+), 4 deletions(-) diff --git a/src/ChangeLog b/src/ChangeLog index 034a5617b4d..73f8dd6d165 100644 --- a/src/ChangeLog +++ b/src/ChangeLog @@ -1,3 +1,8 @@ +2001-07-04 Gerd Moellmann + + * xterm.c (x_produce_glyphs): Don't convert multibyte characters + to unibyte characters in unibyte buffers. + 2001-07-03 Gerd Moellmann * eval.c (specbind): If SYMBOL has a frame-local binding, record diff --git a/src/xterm.c b/src/xterm.c index eeae9714204..5991d3e1223 100644 --- a/src/xterm.c +++ b/src/xterm.c @@ -1817,8 +1817,7 @@ x_produce_glyphs (it) struct glyph because the character code itself tells if or not the character is multibyte. Thus, in the future, we must consider eliminating the field `multibyte_p' in the struct - glyph. - */ + glyph. */ int saved_multibyte_p = it->multibyte_p; /* Maybe translate single-byte characters to multibyte, or the @@ -1839,8 +1838,7 @@ x_produce_glyphs (it) else if (!SINGLE_BYTE_CHAR_P (it->c) && !it->multibyte_p) { - it->char_to_display = multibyte_char_to_unibyte (it->c, Qnil); - it->multibyte_p = 0; + it->multibyte_p = 1; it->face_id = FACE_FOR_CHAR (it->f, face, it->char_to_display); face = FACE_FROM_ID (it->f, it->face_id); } -- 2.39.2