summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorEli Zaretskii <eliz@gnu.org>2000-12-18 10:22:41 +0000
committerEli Zaretskii <eliz@gnu.org>2000-12-18 10:22:41 +0000
commitf3fb9c8328adf0e15bdce74855ee1ce39cfd9e4b (patch)
treecfa274c97d2e4bf221990fdd0f8228eff0f90e8a /src
parent556ac99e3048b08ddf03b9d7f0626066a6b197fc (diff)
downloademacs-f3fb9c8328adf0e15bdce74855ee1ce39cfd9e4b.tar.gz
(IT_write_glyphs): Compute the glyph face from str->face_id.
Diffstat (limited to 'src')
-rw-r--r--src/msdos.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/src/msdos.c b/src/msdos.c
index 1c4e8409ed8..8466d6ba4ca 100644
--- a/src/msdos.c
+++ b/src/msdos.c
@@ -999,6 +999,9 @@ IT_write_glyphs (struct glyph *str, int str_len)
register GLYPH g = GLYPH_FROM_CHAR_GLYPH (*str);
int glyph_not_in_table = 0;
+ /* If g is negative, it means we have a multibyte character
+ in *str. That's what GLYPH_FROM_CHAR_GLYPH returns for
+ multibyte characters. */
if (g < 0 || g >= tlen)
{
/* This glyph doesn't have an entry in Vglyph_table. */
@@ -1034,7 +1037,7 @@ IT_write_glyphs (struct glyph *str, int str_len)
/* If the face of this glyph is different from the current
screen face, update the screen attribute byte. */
- cf = FAST_GLYPH_FACE (g);
+ cf = str->face_id;
if (cf != screen_face)
IT_set_face (cf); /* handles invalid faces gracefully */