diff options
-rw-r--r-- | src/gatt-database.c | 20 |
1 files changed, 16 insertions, 4 deletions
diff --git a/src/gatt-database.c b/src/gatt-database.c index 6e659299..382f8dde 100644 --- a/src/gatt-database.c +++ b/src/gatt-database.c @@ -3182,8 +3182,12 @@ static uint8_t ccc_write_cb(struct pending_op *op, void *user_data) * operation, so simply ignore the return the value. */ #ifdef TIZEN_FEATURE_BLUEZ_MODIFY - g_dbus_proxy_method_call(chrc->proxy, "StopNotify", + if (op) + g_dbus_proxy_method_call(chrc->proxy, "StopNotify", stop_notify_setup, NULL, op, NULL); + else + g_dbus_proxy_method_call(chrc->proxy, "StopNotify", + NULL, NULL, NULL, NULL); #else g_dbus_proxy_method_call(chrc->proxy, "StopNotify", NULL, NULL, NULL, NULL); @@ -3223,13 +3227,21 @@ static uint8_t ccc_write_cb(struct pending_op *op, void *user_data) * value for now. */ #ifdef TIZEN_FEATURE_BLUEZ_MODIFY - if (g_dbus_proxy_method_call(chrc->proxy, "StartNotify", start_notify_setup, NULL, - op, NULL) == FALSE) + if (op) { + if (g_dbus_proxy_method_call(chrc->proxy, "StartNotify", + start_notify_setup, NULL, op, NULL) == FALSE) + return BT_ATT_ERROR_UNLIKELY; + } + else { + if (g_dbus_proxy_method_call(chrc->proxy, "StartNotify", NULL, + NULL, NULL, NULL) == FALSE) + return BT_ATT_ERROR_UNLIKELY; + } #else if (g_dbus_proxy_method_call(chrc->proxy, "StartNotify", NULL, NULL, NULL, NULL) == FALSE) -#endif return BT_ATT_ERROR_UNLIKELY; +#endif __sync_fetch_and_add(&chrc->ntfy_cnt, 1); |