From 4f78547dd5e4a84a6ffc529fb22fd4e477aa8719 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jos=C3=A9=20Roberto=20de=20Souza?= Date: Tue, 22 Jan 2013 19:32:02 +0000 Subject: [PATCH] e/appmenu: Relase bus name when shutdown module MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Patch by: José Roberto de Souza SVN revision: 83101 --- src/modules/appmenu/e_mod_appmenu_private.h | 1 + src/modules/appmenu/e_mod_dbus_registrar_server.c | 8 ++++++++ src/modules/appmenu/e_mod_main.c | 2 +- 3 files changed, 10 insertions(+), 1 deletion(-) diff --git a/src/modules/appmenu/e_mod_appmenu_private.h b/src/modules/appmenu/e_mod_appmenu_private.h index 7bb5a16ef..d3356aeb5 100644 --- a/src/modules/appmenu/e_mod_appmenu_private.h +++ b/src/modules/appmenu/e_mod_appmenu_private.h @@ -37,6 +37,7 @@ struct _E_AppMenu_Window void appmenu_window_free(E_AppMenu_Window *window); void appmenu_dbus_registrar_server_init(E_AppMenu_Context *ctx); +void appmenu_dbus_registrar_server_shutdown(E_AppMenu_Context *ctx); void appmenu_application_monitor(void *data, const char *bus, const char *old, const char *new); void appmenu_menu_render(E_AppMenu_Context *ctxt EINA_UNUSED, E_AppMenu_Window *w); void appmenu_menu_of_instance_render(E_AppMenu_Instance *inst, E_AppMenu_Window *window); diff --git a/src/modules/appmenu/e_mod_dbus_registrar_server.c b/src/modules/appmenu/e_mod_dbus_registrar_server.c index 096b635a7..2a9f03482 100644 --- a/src/modules/appmenu/e_mod_dbus_registrar_server.c +++ b/src/modules/appmenu/e_mod_dbus_registrar_server.c @@ -195,3 +195,11 @@ appmenu_dbus_registrar_server_init(E_AppMenu_Context *ctx) edbus_name_request(ctx->conn, REGISTRAR_BUS, EDBUS_NAME_REQUEST_FLAG_REPLACE_EXISTING, NULL, NULL); } + +void +appmenu_dbus_registrar_server_shutdown(E_AppMenu_Context *ctx) +{ + edbus_service_interface_unregister(ctx->iface); + edbus_name_release(ctx->conn, REGISTRAR_BUS, NULL, NULL); + ctx->iface = NULL; +} diff --git a/src/modules/appmenu/e_mod_main.c b/src/modules/appmenu/e_mod_main.c index 028f5746a..8ad6a70db 100644 --- a/src/modules/appmenu/e_mod_main.c +++ b/src/modules/appmenu/e_mod_main.c @@ -193,7 +193,7 @@ e_modapi_shutdown(E_Module *m) EINA_LIST_FOREACH_SAFE(ctxt->windows, l, l2, w) appmenu_window_free(w); - edbus_service_interface_unregister(ctxt->iface); + appmenu_dbus_registrar_server_shutdown(ctxt); edbus_connection_unref(ctxt->conn); edbus_shutdown(); free(ctxt);