diff options
author | Youngbok Shin <youngb.shin@samsung.com> | 2017-09-11 08:52:03 +0300 |
---|---|---|
committer | Daniel Hirt <hirt.danny@gmail.com> | 2017-09-11 08:52:03 +0300 |
commit | 7a1075500aec849310e796c191aabff0b31f7c68 (patch) | |
tree | 875791e25bc0871d9adf67f798fa6df62c972ebd | |
parent | b656e82b09074ee867d427f50de23a413170d1e5 (diff) | |
download | efl-7a1075500aec849310e796c191aabff0b31f7c68.tar.gz |
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
-rw-r--r-- | src/lib/evas/common/evas_font_query.c | 6 |
1 files changed, 6 insertions, 0 deletions
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)) |