/* End of harfbuzz font funcs */
-static hb_font_funcs_t *
+static inline hb_font_funcs_t *
_evas_common_font_ot_font_funcs_get(void)
{
static hb_font_funcs_t *font_funcs = NULL;
return font_funcs;
}
+static inline hb_unicode_funcs_t *
+_evas_common_font_ot_unicode_funcs_get(void)
+{
+ static hb_unicode_funcs_t *unicode_funcs = NULL;
+ if (!unicode_funcs)
+ {
+ unicode_funcs = hb_unicode_funcs_get_default();
+ }
+
+ return unicode_funcs;
+}
+
static void
_evas_common_font_ot_shape(hb_buffer_t *buffer, RGBA_Font_Int *fi)
{
}
buffer = hb_buffer_create(slen);
- hb_buffer_set_unicode_funcs(buffer, evas_common_language_unicode_funcs_get());
+ hb_buffer_set_unicode_funcs(buffer, _evas_common_font_ot_unicode_funcs_get());
hb_buffer_set_language(buffer, hb_language_from_string(
evas_common_language_from_locale_get()));
hb_buffer_set_script(buffer, _evas_script_to_harfbuzz[props->script]);
#include "evas_script_table.h"
-/* FIXME: rename and move */
-void *
-evas_common_language_unicode_funcs_get(void)
-{
-#if defined(USE_HARFBUZZ)
- return hb_unicode_funcs_get_default();
-#endif
- return NULL;
-}
-
static Evas_Script_Type
_evas_common_language_char_script_search(Eina_Unicode unicode)
{