From: DoHyun Pyun Date: Tue, 6 Dec 2016 02:01:28 +0000 (+0900) Subject: Fix the bug for dbus connection and proxy deinitialization X-Git-Tag: submit/tizen_3.0/20161206.041315 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=refs%2Ftags%2Fsubmit%2Ftizen_3.0%2F20161206.041315;p=platform%2Fcore%2Fconnectivity%2Fbluetooth-frwk.git Fix the bug for dbus connection and proxy deinitialization Change-Id: Id81a3924fb85697bf2056a6c1403f9e3ff9275ca Signed-off-by: DoHyun Pyun --- diff --git a/bt-api/bt-common.c b/bt-api/bt-common.c index 1fc5bcf..d7a9e49 100644 --- a/bt-api/bt-common.c +++ b/bt-api/bt-common.c @@ -1784,10 +1784,13 @@ BT_EXPORT_API int bluetooth_unregister_callback(void) _bt_set_user_data(BT_COMMON, NULL, NULL); + _bt_gdbus_deinit_proxys(); + if (system_gconn) { g_object_unref(system_gconn); system_gconn = NULL; } + return BLUETOOTH_ERROR_NONE; } diff --git a/bt-api/include/bt-request-sender.h b/bt-api/include/bt-request-sender.h index df9c7d8..bf110e5 100644 --- a/bt-api/include/bt-request-sender.h +++ b/bt-api/include/bt-request-sender.h @@ -69,6 +69,9 @@ int _bt_async_send_request(int service_type, int service_function, } \ ) +void _bt_gdbus_deinit_proxys(void); + + #ifdef __cplusplus } #endif diff --git a/bt-service/bt-service-adapter-le.c b/bt-service/bt-service-adapter-le.c index b27d208..2afe345 100644 --- a/bt-service/bt-service-adapter-le.c +++ b/bt-service/bt-service-adapter-le.c @@ -140,7 +140,7 @@ void _bt_clear_gatt_client_senders(void) gatt_client_senders = NULL; } } -#if 0 + static void __bt_send_foreach_event(gpointer data, gpointer user_data) { char *sender = data; @@ -149,15 +149,11 @@ static void __bt_send_foreach_event(gpointer data, gpointer user_data) _bt_send_event_to_dest(sender, BT_DEVICE_EVENT, BLUETOOTH_EVENT_GATT_CHAR_VAL_CHANGED, param); } -#endif + void _bt_send_char_value_changed_event(void *param) { -#if 0 g_slist_foreach(gatt_client_senders, __bt_send_foreach_event, (gpointer)param); -#else - _bt_send_event(BT_DEVICE_EVENT, BLUETOOTH_EVENT_GATT_CHAR_VAL_CHANGED, param); -#endif } void __bt_free_le_adv_slot(void) diff --git a/bt-service/bt-service-event-receiver.c b/bt-service/bt-service-event-receiver.c index ced268a..374585d 100644 --- a/bt-service/bt-service-event-receiver.c +++ b/bt-service/bt-service-event-receiver.c @@ -534,15 +534,11 @@ void _bt_handle_adapter_event(GVariant *msg, const char *member) param = g_variant_new("(ii)", result, adv_handle); -#if 0 const char *sender; sender = _bt_get_adv_slot_owner(slot_id); _bt_send_event_to_dest(sender, BT_ADAPTER_EVENT, event, param); -#else - _bt_send_event(BT_ADAPTER_EVENT, event, param); -#endif if (event == BLUETOOTH_EVENT_ADVERTISING_STOPPED) _bt_unregister_adv_slot_owner(slot_id);