From: Youngbok Shin Date: Mon, 11 Sep 2017 05:52:03 +0000 (+0300) Subject: evas: don't search other fonts only for INHERITED script unicodes X-Git-Tag: submit/tizen/20170915.074959~3 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=2a6825f40a583d5dcbe2fae46ec30ac34a559ed2;p=platform%2Fupstream%2Fefl.git 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 Change-Id: Id67be086ac4d471be04721835be5bae328d0fefd --- diff --git a/src/lib/evas/common/evas_font_query.c b/src/lib/evas/common/evas_font_query.c index d1eca54..7f38600 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))