Mercurial > emacs
changeset 74114:cd686b5380c4
(realize_default_face): Check if the default font name
exists on this display before trying to use it.
author | Chong Yidong <cyd@stupidchicken.com> |
---|---|
date | Tue, 21 Nov 2006 17:22:49 +0000 |
parents | 3cc044eb98b7 |
children | 49ed8fc0c715 |
files | src/xfaces.c |
diffstat | 1 files changed, 12 insertions(+), 4 deletions(-) [+] |
line wrap: on
line diff
--- a/src/xfaces.c Tue Nov 21 16:11:30 2006 +0000 +++ b/src/xfaces.c Tue Nov 21 17:22:49 2006 +0000 @@ -7071,10 +7071,18 @@ #ifdef HAVE_WINDOW_SYSTEM #ifdef HAVE_X_WINDOWS if (face->font != FRAME_FONT (f)) - /* As the font specified for the frame was not acceptable as a - font for the default face (perhaps because auto-scaled fonts - are rejected), we must adjust the frame font. */ - x_set_font (f, build_string (face->font_name), Qnil); + { + /* This can happen when making a frame on a display that does + not support the default font. */ + if (!face->font) + return 0; + + /* Otherwise, the font specified for the frame was not + acceptable as a font for the default face (perhaps because + auto-scaled fonts are rejected), so we must adjust the frame + font. */ + x_set_font (f, build_string (face->font_name), Qnil); + } #endif /* HAVE_X_WINDOWS */ #endif /* HAVE_WINDOW_SYSTEM */ return 1;