From b840b299b96b0b96c72b800173e23894c631a426 Mon Sep 17 00:00:00 2001 From: Kenichi Handa Date: Thu, 16 Apr 2009 01:38:35 +0000 Subject: [PATCH] (xftfont_has_char): Special handling of `ja' and `ko' adstyle. --- src/xftfont.c | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/src/xftfont.c b/src/xftfont.c index e533fd7379..af0feb9b7e 100644 --- a/src/xftfont.c +++ b/src/xftfont.c @@ -467,16 +467,28 @@ xftfont_done_face (f, face) } } +extern Lisp_Object Qja, Qko; + static int xftfont_has_char (font, c) Lisp_Object font; int c; { struct xftfont_info *xftfont_info; + struct charset *cs = NULL; if (FONT_ENTITY_P (font)) return ftfont_driver.has_char (font, c); + if (EQ (AREF (font, FONT_ADSTYLE_INDEX), Qja) + && charset_jisx0208 >= 0) + cs = CHARSET_FROM_ID (charset_jisx0208); + else if (EQ (AREF (font, FONT_ADSTYLE_INDEX), Qko) + && charset_ksc5601 >= 0) + cs = CHARSET_FROM_ID (charset_ksc5601); + if (cs) + return (ENCODE_CHAR (cs, c) != CHARSET_INVALID_CODE (cs)); + xftfont_info = (struct xftfont_info *) XFONT_OBJECT (font); return (XftCharExists (xftfont_info->display, xftfont_info->xftfont, (FcChar32) c) == FcTrue); -- 2.20.1