summaryrefslogtreecommitdiff
path: root/src/term.c
diff options
context:
space:
mode:
authorEli Zaretskii <eliz@gnu.org>2000-05-28 13:23:02 +0000
committerEli Zaretskii <eliz@gnu.org>2000-05-28 13:23:02 +0000
commitadd448900881f981e2b803e0642770a70b9fe85a (patch)
treee234c00823bd3664faf5b9da0096b375cd768dbd /src/term.c
parent5b1ae0512173c17d72e0c2d6b9469717dc092d8d (diff)
downloademacs-add448900881f981e2b803e0642770a70b9fe85a.tar.gz
(produce_glyphs): Don't treat eight-bit-* charsets as multibyte.
From Kenichi Handa.
Diffstat (limited to 'src/term.c')
-rw-r--r--src/term.c11
1 files changed, 11 insertions, 0 deletions
diff --git a/src/term.c b/src/term.c
index 794c92ba011..df3ea60e997 100644
--- a/src/term.c
+++ b/src/term.c
@@ -1856,6 +1856,17 @@ produce_glyphs (it)
it->pixel_width = nspaces;
it->nglyphs = nspaces;
}
+ else if (SINGLE_BYTE_CHAR_P (it->c))
+ {
+ /* Comming here means that it->c is from display table, thus we
+ must send the code as is to the terminal. Although there's
+ no way to know how many columns it occupies on a screen, it
+ is a good assumption that a single byte code has 1-column
+ width. */
+ it->pixel_width = it->nglyphs = 1;
+ if (it->glyph_row)
+ append_glyph (it);
+ }
else
{
/* A multi-byte character. The display width is fixed for all