From ccbdd23fa31d5b80a9058f5a6ca6395206c7ae95 Mon Sep 17 00:00:00 2001 From: Jiwoong Im Date: Tue, 25 Oct 2016 10:58:43 +0900 Subject: [PATCH] assign NULL after unref global object Change-Id: Id73dfc4b464417f93c27926befbc61ff514c7c9f Signed-off-by: Jiwoong Im --- src/alarm-lib.c | 19 ++++++++++++++----- 1 file changed, 14 insertions(+), 5 deletions(-) diff --git a/src/alarm-lib.c b/src/alarm-lib.c index a4016da..e98e376 100644 --- a/src/alarm-lib.c +++ b/src/alarm-lib.c @@ -516,11 +516,15 @@ EXPORT_API int alarmmgr_init(const char *appid) return ALARMMGR_RESULT_SUCCESS; error: - if (introspection_data) + if (introspection_data) { g_dbus_node_info_unref(introspection_data); + introspection_data = NULL; + } - if (registration_id != 0) + if (registration_id != 0) { g_dbus_connection_unregister_object(alarm_context.connection, registration_id); + registration_id = 0; + } g_object_unref(alarm_context.proxy); alarm_context.proxy = NULL; @@ -535,10 +539,15 @@ error: EXPORT_API void alarmmgr_fini() { SECURE_LOGD("Enter"); + if (introspection_data) { + g_dbus_node_info_unref(introspection_data); + introspection_data = NULL; + } - g_dbus_connection_signal_unsubscribe(alarm_context.connection, - alarm_context.sid); - alarm_context.sid = 0; + if (alarm_context.connection != NULL && registration_id != 0) { + g_dbus_connection_unregister_object(alarm_context.connection, registration_id); + registration_id = 0; + } if (alarm_context.proxy) { g_object_unref(alarm_context.proxy); -- 2.7.4