Fix crash issue that occurred when disabling BT during scanning 46/305746/3 accepted/tizen/7.0/unified/20240208.094433
authorWootak Jung <wootak.jung@samsung.com>
Wed, 7 Feb 2024 04:48:14 +0000 (13:48 +0900)
committerWootak Jung <wootak.jung@samsung.com>
Wed, 7 Feb 2024 06:28:10 +0000 (15:28 +0900)
All timeout callbacks for scan results should be removed.

0: 0x0000007f9da8bb5c in __bt_hal_send_le_scan_result_event (adv_info=adv_info@entry=0x55a81a9240)
   at /usr/src/debug/bluetooth-frwk-0.7.0-1.aarch64/bt-oal/bluez_hal/src/bt-hal-gatt.c:465 --> bluetooth-frwk-oal (rpm)
1: 0x0000007f9da8bbcc in __bt_hal_adv_scan_req_timeout_cb (user_data=0x55a81a9240, user_data@entry=<error reading variable: value has been optimized out>)
   at /usr/src/debug/bluetooth-frwk-0.7.0-1.aarch64/bt-oal/bluez_hal/src/bt-hal-gatt.c:756 --> bluetooth-frwk-oal (rpm)

Change-Id: Ifc8d42a31f6d70687423abe43335165edea62726
Signed-off-by: Wootak Jung <wootak.jung@samsung.com>
bt-oal/bluez_hal/src/bt-hal-gatt.c

index 63606d4..37d4fb1 100644 (file)
@@ -876,6 +876,9 @@ static bt_status_t gatt_init(const btgatt_callbacks_t* callbacks)
  *******************************************************************************/
 static void gatt_cleanup(void)
 {
+       DBG("If scanning, remove all timeout callbacks for scan results");
+       bt_hal_release_pending_adv_ind_list();
+
        _bt_hal_unregister_gatt_le_dbus_handler_cb();
        _bt_hal_unregister_gatt_client_handler_cb();
        _bt_hal_unregister_gatt_server_handler_cb();