diff options
| author | Xue Fuqiao | 2013-09-04 08:39:34 +0800 |
|---|---|---|
| committer | Xue Fuqiao | 2013-09-04 08:39:34 +0800 |
| commit | adf2fc4a01efe77d73cd52bc9173914ed56ff531 (patch) | |
| tree | a5a280a5554a7bffeaf94fccae29fa3ac1a5d066 /src/fontset.c | |
| parent | 63191d9f2043d2e67657e85a7b3842805dd1dad6 (diff) | |
| parent | 38726039b77db432989fed106c88e9f1aa463281 (diff) | |
| download | emacs-adf2fc4a01efe77d73cd52bc9173914ed56ff531.tar.gz emacs-adf2fc4a01efe77d73cd52bc9173914ed56ff531.zip | |
Merge from mainline.
Diffstat (limited to 'src/fontset.c')
| -rw-r--r-- | src/fontset.c | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/src/fontset.c b/src/fontset.c index 0bf716bf1b2..a6277b050d5 100644 --- a/src/fontset.c +++ b/src/fontset.c | |||
| @@ -944,6 +944,19 @@ face_for_char (struct frame *f, struct face *face, int c, int pos, Lisp_Object o | |||
| 944 | if (ASCII_CHAR_P (c) || face->fontset < 0) | 944 | if (ASCII_CHAR_P (c) || face->fontset < 0) |
| 945 | return face->ascii_face->id; | 945 | return face->ascii_face->id; |
| 946 | 946 | ||
| 947 | #ifdef HAVE_NS | ||
| 948 | if (face->font) | ||
| 949 | { | ||
| 950 | /* Fonts often have characters in other scripts, like symbol, even if they | ||
| 951 | don't match script: symbol. So check if the character is present | ||
| 952 | in the current face first. Only enable for NS for now, but should | ||
| 953 | perhaps be general? */ | ||
| 954 | Lisp_Object font_object; | ||
| 955 | XSETFONT (font_object, face->font); | ||
| 956 | if (font_has_char (f, font_object, c)) return face->id; | ||
| 957 | } | ||
| 958 | #endif | ||
| 959 | |||
| 947 | eassert (fontset_id_valid_p (face->fontset)); | 960 | eassert (fontset_id_valid_p (face->fontset)); |
| 948 | fontset = FONTSET_FROM_ID (face->fontset); | 961 | fontset = FONTSET_FROM_ID (face->fontset); |
| 949 | eassert (!BASE_FONTSET_P (fontset)); | 962 | eassert (!BASE_FONTSET_P (fontset)); |