/* Create hb_font if not previously created */
if (!fi->ft.hb_font)
{
- hb_font_t *hb_ft_font;
-
+ hb_font_t *hb_ft_font = NULL;
hb_ft_font = hb_ft_font_create(fi->src->ft.face, NULL);
+ //TIZEN ONLY(20220802): harfbuzz error checking added.
+ if (hb_ft_font == hb_font_get_empty())
+ {
+ fi->ft.hb_font = NULL;
+ return;
+ }
fi->ft.hb_font = hb_font_create_sub_font(hb_ft_font);
hb_font_destroy(hb_ft_font);
const char *lang)
{
RGBA_Font_Int *fi;
- hb_buffer_t *buffer;
+ hb_buffer_t *buffer = NULL;
hb_glyph_position_t *positions;
hb_glyph_info_t *infos;
int slen;
}
buffer = hb_buffer_create();
+ //TIZEN ONLY(20220802): harfbuzz error checking added.
+ if (buffer == hb_buffer_get_empty()) return EINA_FALSE;
hb_buffer_set_unicode_funcs(buffer, _evas_common_font_ot_unicode_funcs_get());
hb_buffer_set_language(buffer, hb_language_from_string(lang, -1));
hb_buffer_set_script(buffer, _evas_script_to_harfbuzz[props->script]);