From 7ceaebf20b4cf527db2d13007c8d4bedc2f9a664 Mon Sep 17 00:00:00 2001 From: Youngbok Shin Date: Wed, 18 Jan 2017 18:35:08 +0900 Subject: [PATCH] evas: don't reinit fontconfig to destroy _fcConfig FcInitReinitialize() function will destroy previous default(or current) _fcConfig. If fontconfig is used outside of Evas, it can cause some crash issues. @tizen_fix Change-Id: Ied340277155832c802e5ce1f8f66a6c8be5ae115 (cherry picked from commit 0bc545d5555d30cfcb024ac52ad2e1f29457d3b7) --- src/lib/evas/canvas/evas_font_dir.c | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/src/lib/evas/canvas/evas_font_dir.c b/src/lib/evas/canvas/evas_font_dir.c index 23b9cb4..9155c77 100644 --- a/src/lib/evas/canvas/evas_font_dir.c +++ b/src/lib/evas/canvas/evas_font_dir.c @@ -1531,6 +1531,7 @@ evas_font_reinit(void) Eina_List *l; char *path; + /* TIZEN_ONLY(20170118): don't reinit fontconfig to destroy _fcConfig if (fc_config) FcConfigDestroy(fc_config); FcInitReinitialize(); @@ -1538,5 +1539,15 @@ evas_font_reinit(void) EINA_LIST_FOREACH(global_font_path, l, path) FcConfigAppFontAddDir(fc_config, (const FcChar8 *) path); + */ + if (fc_config) + { + FcConfigDestroy(fc_config); + fc_config = FcInitLoadConfigAndFonts(); + + EINA_LIST_FOREACH(global_font_path, l, path) + FcConfigAppFontAddDir(fc_config, (const FcChar8 *) path); + } + /* END */ #endif } -- 2.7.4