evas: proceed glyph iterator to handle next index properly

Summary:
When harfbuzz is enabled, _content_create_ot() function will be used
for shaping. If evas_common_font_int_cache_glyph_get() failed in some reason,
it never proceed gl_itr until the end.
It can cause weird rendering result. Because, all of gl_itr after the failure
can't have proper x_bear, y_bear and width.
@fix

Test Plan: N/A

Reviewers: raster, cedric, herdsman, jpeg

Differential Revision: https://phab.enlightenment.org/D5154
This commit is contained in:
Youngbok Shin 2017-09-04 10:18:05 +03:00 committed by Daniel Hirt
parent 8574128b67
commit bf1c0e2657
1 changed files with 1 additions and 2 deletions

View File

@ -352,7 +352,7 @@ _content_create_ot(RGBA_Font_Int *fi, const Eina_Unicode *text,
evas_common_font_ot_populate_text_props(text, text_props, len, mode, lang);
gl_itr = text_props->info->glyph;
for (char_index = 0 ; char_index < text_props->len ; char_index++)
for (char_index = 0 ; char_index < text_props->len ; char_index++, gl_itr++)
{
FT_UInt idx;
RGBA_Font_Glyph *fg;
@ -406,7 +406,6 @@ _content_create_ot(RGBA_Font_Int *fi, const Eina_Unicode *text,
gl_itr->pen_after += adjust_x;
fi = text_props->font_instance;
gl_itr++;
}
}
#else