# HG changeset patch # User Kenichi Handa # Date 1196690035 0 # Node ID 609500aa30a8e6f2683c54dec110a5cd1bf88790 # Parent f659645b3f449f51edd8ca90cf0d862bf65e9ab2 Include "font.h" unconditionally. (choose_face_font): Accept new form of font-spec. diff -r f659645b3f44 -r 609500aa30a8 src/xfaces.c --- a/src/xfaces.c Mon Dec 03 13:52:35 2007 +0000 +++ b/src/xfaces.c Mon Dec 03 13:53:55 2007 +0000 @@ -250,9 +250,7 @@ #include "termchar.h" #ifdef HAVE_WINDOW_SYSTEM -#ifdef USE_FONT_BACKEND #include "font.h" -#endif /* USE_FONT_BACKEND */ #endif /* HAVE_WINDOW_SYSTEM */ #ifdef HAVE_X_WINDOWS @@ -7277,9 +7275,8 @@ (if specified). When we are choosing a font for ASCII characters, FONT-SPEC is - always nil. Otherwise FONT-SPEC is a list - [ FAMILY WEIGHT SLANT SWIDTH ADSTYLE REGISTRY ] - or a string specifying a font name pattern. + always nil. Otherwise FONT-SPEC is an object created by + `font-spec' or a string specifying a font name pattern. If NEEDS_OVERSTRIKE is not NULL, a boolean is returned in it to indicate whether the resulting font should be drawn using @@ -7318,10 +7315,12 @@ if (VECTORP (font_spec)) { pattern = Qnil; - if (STRINGP (AREF (font_spec, FONT_SPEC_FAMILY_INDEX))) - family = Fcons (AREF (font_spec, FONT_SPEC_FAMILY_INDEX), family); - adstyle = AREF (font_spec, FONT_SPEC_ADSTYLE_INDEX); - registry = Fcons (AREF (font_spec, FONT_SPEC_REGISTRY_INDEX), Qnil); + if (! NILP (AREF (font_spec, FONT_FAMILY_INDEX))) + family = Fcons (SYMBOL_NAME (AREF (font_spec, FONT_FAMILY_INDEX)), + family); + adstyle = AREF (font_spec, FONT_ADSTYLE_INDEX); + registry = Fcons (SYMBOL_NAME (AREF (font_spec, FONT_REGISTRY_INDEX)), + Qnil); } else if (STRINGP (font_spec)) {