emacs-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Emacs-diffs] emacs-25 ad879b7 2/2: Backport:fix previous change of src/


From: Kenichi Handa
Subject: [Emacs-diffs] emacs-25 ad879b7 2/2: Backport:fix previous change of src/ftfont.c (ftfont_shape_by_flt)
Date: Tue, 26 Jan 2016 15:32:22 +0000

branch: emacs-25
commit ad879b7f7e049160c45361fe8a12580801ba035b
Author: K. Handa <address@hidden>
Commit: K. Handa <address@hidden>

    Backport:fix previous change of src/ftfont.c (ftfont_shape_by_flt)
    
    * src/ftfont.c (ftfont_shape_by_flt): Fix previous change.  Access the
    second glyph only when there are enough glyphs.
    
    (cherry picked from commit 9835757013569673854b692ccbb58bfb3c3ed1f7)
---
 src/ftfont.c |   10 ++++++----
 1 files changed, 6 insertions(+), 4 deletions(-)

diff --git a/src/ftfont.c b/src/ftfont.c
index bb8af96..505d508 100644
--- a/src/ftfont.c
+++ b/src/ftfont.c
@@ -2590,7 +2590,7 @@ ftfont_shape_by_flt (Lisp_Object lgstring, struct font 
*font,
   flt_font_ft.otf = otf;
   flt_font_ft.matrix = matrix->xx != 0 ? matrix : 0;
 
-  if (1 < len || ! otf)
+  if (1 < len)
     {
       /* A little bit ad hoc.  Perhaps, shaper must get script and
         language information, and select a proper flt for them
@@ -2598,9 +2598,11 @@ ftfont_shape_by_flt (Lisp_Object lgstring, struct font 
*font,
       int c1 = LGLYPH_CHAR (LGSTRING_GLYPH (lgstring, 1));
       if (CHAR_HAS_CATEGORY (c1, '^'))
        flt = mflt_get (msymbol ("combining"));
-      else if (! otf)
-       flt = mflt_find (LGLYPH_CHAR (LGSTRING_GLYPH (lgstring, 0)),
-                        &flt_font_ft.flt_font);
+    }
+  if (! flt && ! otf)
+    {
+      flt = mflt_find (LGLYPH_CHAR (LGSTRING_GLYPH (lgstring, 0)),
+                      &flt_font_ft.flt_font);
       if (! flt)
        return make_number (0);
     }



reply via email to

[Prev in Thread] Current Thread [Next in Thread]