Fix SVACE issues 86/141986/1
authorNagaraj D R <nagaraj.dr@samsung.com>
Tue, 7 Mar 2017 09:34:18 +0000 (15:04 +0530)
committerNagaraj D R <nagaraj.dr@samsung.com>
Wed, 2 Aug 2017 07:02:44 +0000 (12:32 +0530)
SVACE critical issues.

Change-Id: I83c36fbece5ef3bafdb59473e76a9153c78f4840

src/bluetooth-adapter.c

index c8b216ed5f03504fa2001c6e0168d100ddcdb6d2..17a266189b3a28229239018997d25a10433ce6e1 100644 (file)
@@ -3841,7 +3841,11 @@ int bt_adapter_le_scan_filter_set_proximity_uuid(bt_scan_filter_h scan_filter)
                if (ret == BT_ERROR_NONE)
                        ret = bt_adapter_le_scan_filter_register(pxp_linkloss_alert_filter);
                if (ret != BT_ERROR_NONE) {
-                       bt_adapter_le_scan_filter_unregister(pxp_linkloss_alert_filter);
+                       BT_ERR("%s(0x%08x)", _bt_convert_error_to_string(ret), ret);
+                       ret = bt_adapter_le_scan_filter_destroy(pxp_linkloss_alert_filter);
+                       if (ret != BT_ERROR_NONE) {
+                               BT_ERR("%s(0x%08x)", _bt_convert_error_to_string(ret), ret);
+                       }
                        pxp_linkloss_alert_filter = NULL;
                }
        } else {
@@ -3856,7 +3860,11 @@ int bt_adapter_le_scan_filter_set_proximity_uuid(bt_scan_filter_h scan_filter)
                if (ret == BT_ERROR_NONE)
                        ret = bt_adapter_le_scan_filter_register(pxp_immediate_alert_filter);
                if (ret != BT_ERROR_NONE) {
-                       bt_adapter_le_scan_filter_unregister(pxp_immediate_alert_filter);
+                       BT_ERR("%s(0x%08x)", _bt_convert_error_to_string(ret), ret);
+                       ret = bt_adapter_le_scan_filter_destroy(pxp_immediate_alert_filter);
+                       if (ret != BT_ERROR_NONE) {
+                               BT_ERR("%s(0x%08x)", _bt_convert_error_to_string(ret), ret);
+                       }
                        pxp_immediate_alert_filter = NULL;
                }
        } else {
@@ -3871,7 +3879,11 @@ int bt_adapter_le_scan_filter_set_proximity_uuid(bt_scan_filter_h scan_filter)
                if (ret == BT_ERROR_NONE)
                        ret = bt_adapter_le_scan_filter_register(pxp_signal_loss_filter);
                if (ret != BT_ERROR_NONE) {
-                       bt_adapter_le_scan_filter_unregister(pxp_signal_loss_filter);
+                       BT_ERR("%s(0x%08x)", _bt_convert_error_to_string(ret), ret);
+                       ret = bt_adapter_le_scan_filter_destroy(pxp_signal_loss_filter);
+                       if (ret != BT_ERROR_NONE) {
+                               BT_ERR("%s(0x%08x)", _bt_convert_error_to_string(ret), ret);
+                       }
                        pxp_signal_loss_filter = NULL;
                }
        } else {
@@ -3891,18 +3903,39 @@ int bt_adapter_le_scan_filter_unset_proximity_uuid(bt_scan_filter_h scan_filter)
        /* unregister Linkloss alert scan filter */
        if (pxp_linkloss_alert_filter) {
                ret = bt_adapter_le_scan_filter_unregister(pxp_linkloss_alert_filter);
+               if (ret != BT_ERROR_NONE) {
+                       BT_ERR("%s(0x%08x)", _bt_convert_error_to_string(ret), ret);
+               }
+               ret = bt_adapter_le_scan_filter_destroy(pxp_linkloss_alert_filter);
+               if (ret != BT_ERROR_NONE) {
+                       BT_ERR("%s(0x%08x)", _bt_convert_error_to_string(ret), ret);
+               }
                pxp_linkloss_alert_filter = NULL;
        }
 
        /* unregister Immediate alert scan filter */
        if (pxp_immediate_alert_filter) {
                ret = bt_adapter_le_scan_filter_unregister(pxp_immediate_alert_filter);
+               if (ret != BT_ERROR_NONE) {
+                       BT_ERR("%s(0x%08x)", _bt_convert_error_to_string(ret), ret);
+               }
+               ret = bt_adapter_le_scan_filter_destroy(pxp_immediate_alert_filter);
+               if (ret != BT_ERROR_NONE) {
+                       BT_ERR("%s(0x%08x)", _bt_convert_error_to_string(ret), ret);
+               }
                pxp_immediate_alert_filter = NULL;
        }
 
        /* unregister Signal loss scan filter */
        if (pxp_signal_loss_filter) {
                ret = bt_adapter_le_scan_filter_unregister(pxp_signal_loss_filter);
+               if (ret != BT_ERROR_NONE) {
+                       BT_ERR("%s(0x%08x)", _bt_convert_error_to_string(ret), ret);
+               }
+               ret = bt_adapter_le_scan_filter_destroy(pxp_signal_loss_filter);
+               if (ret != BT_ERROR_NONE) {
+                       BT_ERR("%s(0x%08x)", _bt_convert_error_to_string(ret), ret);
+               }
                pxp_signal_loss_filter = NULL;
        }