diff options
author | Kenichi Handa <[email protected]> | 1998-06-20 03:01:00 +0000 |
---|---|---|
committer | Kenichi Handa <[email protected]> | 1998-06-20 03:01:00 +0000 |
commit | a9a5b0a53c0c91b5025aa806557803e136501ac3 (patch) | |
tree | 4330e5e9c766be42143cb1cd00c46a4bc870b132 /src | |
parent | 63d3d7841a93dc55a15d5b2531e678a3a5e8f9ef (diff) |
(dumpglyphs): Check the case that FACE_FONT (face) is
NULL. While displaing cursor with non-default face, if the
variable `font' is NULL, don't set GCFont.
Diffstat (limited to 'src')
-rw-r--r-- | src/xterm.c | 14 |
1 files changed, 8 insertions, 6 deletions
diff --git a/src/xterm.c b/src/xterm.c index 565e9205ca..582eb2fd5f 100644 --- a/src/xterm.c +++ b/src/xterm.c @@ -783,7 +783,7 @@ dumpglyphs (f, left, top, gp, n, hl, just_foreground, cmpcharp) if (charset == CHARSET_ASCII || charset == charset_latin_iso8859_1) { font = FACE_FONT (face); - if (font == (XFontStruct *) FACE_DEFAULT) + if (!font || font == (XFontStruct *) FACE_DEFAULT) font = f->output_data.x->font; baseline = FONT_BASE (f->output_data.x->font); if (charset == charset_latin_iso8859_1) @@ -837,12 +837,14 @@ dumpglyphs (f, left, top, gp, n, hl, just_foreground, cmpcharp) xgcv.background = face->foreground; xgcv.foreground = face->background; } - if (font) - xgcv.font = font->fid; - else - xgcv.font = FACE_FONT (face)->fid; xgcv.graphics_exposures = 0; - mask = GCForeground | GCBackground | GCFont | GCGraphicsExposures; + mask = GCForeground | GCBackground | GCGraphicsExposures; + if (font) + { + xgcv.font = font->fid; + mask |= GCFont; + } + if (FRAME_X_DISPLAY_INFO (f)->scratch_cursor_gc) XChangeGC (FRAME_X_DISPLAY (f), FRAME_X_DISPLAY_INFO (f)->scratch_cursor_gc, |