[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Emacs-diffs] trunk r114089: * fontset.c (face_for_char): Check char in
From: |
Jan D. |
Subject: |
[Emacs-diffs] trunk r114089: * fontset.c (face_for_char): Check char in the current face font first |
Date: |
Sun, 01 Sep 2013 09:59:11 +0000 |
User-agent: |
Bazaar (2.6b2) |
------------------------------------------------------------
revno: 114089
revision-id: address@hidden
parent: address@hidden
fixes bug: http://debbugs.gnu.org/15138
committer: Jan D. <address@hidden>
branch nick: trunk
timestamp: Sun 2013-09-01 11:59:19 +0200
message:
* fontset.c (face_for_char): Check char in the current face font first
if HAVE_NS.
modified:
src/ChangeLog changelog-20091113204419-o5vbwnq5f7feedwu-1438
src/fontset.c fontset.c-20091113204419-o5vbwnq5f7feedwu-1079
=== modified file 'src/ChangeLog'
--- a/src/ChangeLog 2013-08-31 09:22:53 +0000
+++ b/src/ChangeLog 2013-09-01 09:59:19 +0000
@@ -1,3 +1,8 @@
+2013-09-01 Jan Djärv <address@hidden>
+
+ * fontset.c (face_for_char): Check char in the current face font first
+ if HAVE_NS (Bug#15138).
+
2013-08-31 Martin Rudalics <address@hidden>
* window.c (temp_output_buffer_show): Make sure window returned
=== modified file 'src/fontset.c'
--- a/src/fontset.c 2013-08-03 03:29:03 +0000
+++ b/src/fontset.c 2013-09-01 09:59:19 +0000
@@ -944,6 +944,19 @@
if (ASCII_CHAR_P (c) || face->fontset < 0)
return face->ascii_face->id;
+#ifdef HAVE_NS
+ if (face->font)
+ {
+ /* Fonts often have characters in other scripts, like symbol, even if
they
+ don't match script: symbol. So check if the character is present
+ in the current face first. Only enable for NS for now, but should
+ perhaps be general? */
+ Lisp_Object font_object;
+ XSETFONT (font_object, face->font);
+ if (font_has_char (f, font_object, c)) return face->id;
+ }
+#endif
+
eassert (fontset_id_valid_p (face->fontset));
fontset = FONTSET_FROM_ID (face->fontset);
eassert (!BASE_FONTSET_P (fontset));
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [Emacs-diffs] trunk r114089: * fontset.c (face_for_char): Check char in the current face font first,
Jan D. <=