From 1b28da85f8e76a9052e99e0bc9394cb26a42cdac Mon Sep 17 00:00:00 2001 From: Hosang Kim Date: Thu, 28 Sep 2017 16:05:21 +0900 Subject: [PATCH] elm_need_efret() - improve error handling according to coverity fix CID 1360466, CID 1353589 we don't actually chekc if efreet inits right with elm_need_efreet() as we just assume it inits (And there pretty much is no case where it will not), but make coverity happy and check. @fix Change-Id: Ieb37ab35a6ebc3a7e30b9fd5be6bb0e5b06aa64f --- src/lib/elm_main.c | 22 ++++++++++++++++------ 1 file changed, 16 insertions(+), 6 deletions(-) diff --git a/src/lib/elm_main.c b/src/lib/elm_main.c index c84bddd..d0e24bc 100644 --- a/src/lib/elm_main.c +++ b/src/lib/elm_main.c @@ -587,11 +587,20 @@ EAPI Eina_Bool elm_need_efreet(void) { if (_elm_need_efreet) return EINA_TRUE; + if (!efreet_init()) return EINA_FALSE; + if (!efreet_mime_init()) + { + efreet_shutdown(); + return EINA_FALSE; + } + if (!efreet_trash_init()) + { + efreet_mime_shutdown(); + efreet_shutdown(); + return EINA_FALSE; + } _elm_need_efreet = EINA_TRUE; - efreet_init(); - efreet_mime_init(); - efreet_trash_init(); - /* + /* { Eina_List **list; @@ -604,7 +613,7 @@ elm_need_efreet(void) *list = eina_list_prepend(*list, (void *)eina_stringshare_add(buf)); } } - */ + */ return EINA_TRUE; } @@ -661,7 +670,8 @@ elm_quicklaunch_init(int argc, if (!ELM_EVENT_PROCESS_FOREGROUND) ELM_EVENT_PROCESS_FOREGROUND = ecore_event_type_new(); - ecore_file_init(); + if (!ecore_file_init()) + ERR("Elementary cannot init ecore_file"); eio_init(); _elm_exit_handler = ecore_event_handler_add(ECORE_EVENT_SIGNAL_EXIT, _elm_signal_exit, NULL); -- 2.7.4