From f088b054762a1efde71f64690d0418811812dd59 Mon Sep 17 00:00:00 2001 From: Kenichi Handa Date: Wed, 28 Jan 2009 11:50:18 +0000 Subject: (font_for_char): Use assq_no_quit, not assoc_no_quit. (fontset_get_font_group): Remember that no font-group is specified for C. --- src/fontset.c | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) (limited to 'src/fontset.c') diff --git a/src/fontset.c b/src/fontset.c index b69c650c7c5..701ab66e89e 100644 --- a/src/fontset.c +++ b/src/fontset.c @@ -89,7 +89,8 @@ EXFUN (Fclear_face_cache, 1); An element of a base fontset is a vector of FONT-DEFs which itself is a vector [ FONT-SPEC ENCODING REPERTORY ]. - An element of a realized fontset is nil, t, or a vector of this form: + An element of a realized fontset is nil, t, 0, or a vector of this + form: [ CHARSET-ORDERED-LIST-TICK PREFERRED-RFONT-DEF RFONT-DEF0 RFONT-DEF1 ... ] @@ -107,6 +108,10 @@ EXFUN (Fclear_face_cache, 1); The value t means that no font is available for the corresponding range of characters. + The value 0 means that no font is available for the corresponding + range of characters in this fontset, but may be available in the + default fontset. + A fontset has 9 extra slots. @@ -474,7 +479,11 @@ fontset_get_font_group (Lisp_Object fontset, int c) else font_group = FONTSET_FALLBACK (base_fontset); if (NILP (font_group)) - return Qnil; + { + if (c >= 0) + char_table_set_range (fontset, from, to, make_number (0)); + return Qnil; + } font_group = Fcopy_sequence (font_group); for (i = 0; i < ASIZE (font_group); i++) if (! NILP (AREF (font_group, i))) -- cgit v1.2.1