diff --git a/src/modules/quickaccess/e_mod_main.c b/src/modules/quickaccess/e_mod_main.c index 105495ebc..d2402a18e 100644 --- a/src/modules/quickaccess/e_mod_main.c +++ b/src/modules/quickaccess/e_mod_main.c @@ -25,6 +25,23 @@ Config *qa_config = NULL; EAPI E_Module_Api e_modapi = {E_MODULE_API_VERSION, "Quickaccess"}; ////////////////////////////// +static void +_e_modapi_shutdown(void) +{ + e_qa_shutdown(); + + conf_edd = e_qa_config_dd_free(); + eina_log_domain_unregister(_e_quick_access_log_dom); + _e_quick_access_log_dom = -1; + + e_configure_registry_item_del("launcher/quickaccess"); + e_configure_registry_category_del("launcher"); + + e_qa_config_free(qa_config); + E_FREE(qa_mod); + qa_config = NULL; +} + EAPI void * e_modapi_init(E_Module *m) { @@ -59,7 +76,7 @@ e_modapi_init(E_Module *m) if (!e_qa_init()) { - e_modapi_shutdown(NULL); + _e_modapi_shutdown(); return NULL; } @@ -69,18 +86,7 @@ e_modapi_init(E_Module *m) EAPI int e_modapi_shutdown(E_Module *m __UNUSED__) { - e_qa_shutdown(); - - conf_edd = e_qa_config_dd_free(); - eina_log_domain_unregister(_e_quick_access_log_dom); - _e_quick_access_log_dom = -1; - - e_configure_registry_item_del("launcher/quickaccess"); - e_configure_registry_category_del("launcher"); - - e_qa_config_free(qa_config); - E_FREE(qa_mod); - qa_config = NULL; + _e_modapi_shutdown(); return 1; } diff --git a/src/modules/teamwork/e_mod_main.c b/src/modules/teamwork/e_mod_main.c index 26f4729bf..30f8e8c61 100644 --- a/src/modules/teamwork/e_mod_main.c +++ b/src/modules/teamwork/e_mod_main.c @@ -109,6 +109,26 @@ e_tw_act_toggle_cb(E_Object *obj EINA_UNUSED, const char *params) } } ////////////////////////////// +static void +_e_modapi_shutdown(void) +{ + e_tw_shutdown(); + + E_CONFIG_DD_FREE(conf_edd); + eina_log_domain_unregister(_e_teamwork_log_dom); + _e_teamwork_log_dom = -1; + + e_configure_registry_item_del("applications/teamwork"); + e_configure_registry_category_del("applications"); + + e_action_predef_name_del(_e_tw_name, _lbl_toggle); + e_action_del(_act_toggle); + e_tw_toggle = NULL; + + E_FREE(tw_config); + E_FREE(tw_mod); +} + EAPI void * e_modapi_init(E_Module *m) { @@ -148,7 +168,7 @@ e_modapi_init(E_Module *m) if (!e_tw_init()) { - e_modapi_shutdown(NULL); + _e_modapi_shutdown(); return NULL; } e_tw_toggle = e_action_add(_act_toggle); @@ -161,21 +181,7 @@ e_modapi_init(E_Module *m) EAPI int e_modapi_shutdown(E_Module *m __UNUSED__) { - e_tw_shutdown(); - - E_CONFIG_DD_FREE(conf_edd); - eina_log_domain_unregister(_e_teamwork_log_dom); - _e_teamwork_log_dom = -1; - - e_configure_registry_item_del("applications/teamwork"); - e_configure_registry_category_del("applications"); - - e_action_predef_name_del(_e_tw_name, _lbl_toggle); - e_action_del(_act_toggle); - e_tw_toggle = NULL; - - E_FREE(tw_config); - E_FREE(tw_mod); + _e_modapi_shutdown(); return 1; }