herdsman pushed a commit to branch master.

http://git.enlightenment.org/core/efl.git/commit/?id=7a1075500aec849310e796c191aabff0b31f7c68

commit 7a1075500aec849310e796c191aabff0b31f7c68
Author: Youngbok Shin <[email protected]>
Date:   Mon Sep 11 08:52:03 2017 +0300

    evas: don't search other fonts only for INHERITED script unicodes
    
    Summary:
    INHERITED script unicodes are only meaningful when it comes
    after the previous unicode from same font.
    Even if there is no glyph for the INHERTED script unicode from current font,
    don't search other font for loading the unicdoe as first unicode
    of next item. It will be meaningless.
    @fix
    
    Test Plan:
    Check the following Emoji sequence with an emoji font
    which does not have variation selector glyphs.
    { 0x1F3F3, 0xFE0F, 0x200D, 0x1F308 }
    
    Reviewers: raster, cedric, herdsman, jpeg, woohyun
    
    Reviewed By: herdsman
    
    Differential Revision: https://phab.enlightenment.org/D5156
---
 src/lib/evas/common/evas_font_query.c | 6 ++++++
 1 file changed, 6 insertions(+)

diff --git a/src/lib/evas/common/evas_font_query.c 
b/src/lib/evas/common/evas_font_query.c
index 081f9a5e54..8fe82dacbb 100644
--- a/src/lib/evas/common/evas_font_query.c
+++ b/src/lib/evas/common/evas_font_query.c
@@ -77,6 +77,12 @@ evas_common_font_query_run_font_end_get(RGBA_Font *fn, 
RGBA_Font_Int **script_fi
               * the meanwhile. */
              if (*itr <= 0x1F)
                 continue;
+
+             /* Skip searching font for INHERITED script unicodes.
+              * It is meaningful when only it comes after other unicodes from 
same font. */
+             if (evas_common_language_char_script_get(*itr) == 
EVAS_SCRIPT_INHERITED)
+                continue;
+
              /* Break if either it's not in the font, or if it is in the
               * script's font. */
              if (!evas_common_get_char_index(fi, *itr))

-- 


Reply via email to