fixed B/S issue on calling setting_dbus_handler_fini
authorMyoungJune Park <mj2004.park@samsung.com>
Wed, 24 Oct 2012 08:27:50 +0000 (17:27 +0900)
committerMyoungJune Park <mj2004.park@samsung.com>
Sat, 27 Oct 2012 10:24:14 +0000 (19:24 +0900)
src/setting-main.c
src/setting-plugin.c

index 58dd80c..b12706c 100755 (executable)
@@ -2264,7 +2264,7 @@ void setting_main_list_mouse_up_cb(void *data, Evas_Object *eo,
 
        SETTING_TRACE("change radio[%s], status is:%d", _(list_item->keyStr),
                      list_item->chk_status);
-       /*setting_main_appdata *ad = g_main_ad;*/
+       setting_main_appdata *ad = g_main_ad;
 
        if (!safeStrCmp(KeyStr_UsePacketData, list_item->keyStr)) {
                int err;
index e86cc87..fee521b 100755 (executable)
@@ -380,20 +380,24 @@ int setting_dbus_handler_fini(void)
     DBusError error;
     char rule[MAX_LOCAL_BUFSIZE];
 
-    dbus_error_init(&error);
-    dbus_connection_remove_filter(bus, __signal_filter, NULL);
-    snprintf(rule, MAX_LOCAL_BUFSIZE, "path='%s',type='signal',interface='%s'", DBUS_PATH, DBUS_SIGNAL_INTERFACE);
-    dbus_bus_remove_match(bus, rule, &error);
+       if (bus)
+       {
+               dbus_error_init(&error);
+               dbus_connection_remove_filter(bus, __signal_filter, NULL);
+               snprintf(rule, MAX_LOCAL_BUFSIZE, "path='%s',type='signal',interface='%s'", DBUS_PATH, DBUS_SIGNAL_INTERFACE);
+               dbus_bus_remove_match(bus, rule, &error);
 
-    if (dbus_error_is_set(&error))
-    {
-        SETTING_TRACE("Fail to rule unset: %s", error.message);
-        dbus_error_free(&error);
-        return -1;
-    }
+               if (dbus_error_is_set(&error))
+               {
+                       SETTING_TRACE("Fail to rule unset: %s", error.message);
+                       dbus_error_free(&error);
+                       return -1;
+               }
 
-    dbus_connection_close(bus);
-    SETTING_TRACE("app signal finalized");
+               dbus_connection_close(bus);
+               bus = NULL;
+               SETTING_TRACE("app signal finalized");
+       }
     return 0;
 }