From 69829e3add2c8e66579debf230e3bd9d479f94d3 Mon Sep 17 00:00:00 2001 From: Zhang Hai Peng Date: Fri, 25 Jul 2025 21:53:37 +0800 Subject: [PATCH] fix(ble/bluedroid): Fixed fail to disconnect when device record is cleared (cherry picked from commit b6dc79af47f7a1fbed0e1193666a5470871344bb) Co-authored-by: zhanghaipeng --- components/bt/host/bluedroid/stack/btm/btm_acl.c | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/components/bt/host/bluedroid/stack/btm/btm_acl.c b/components/bt/host/bluedroid/stack/btm/btm_acl.c index 9050678589..fdce6261ff 100644 --- a/components/bt/host/bluedroid/stack/btm/btm_acl.c +++ b/components/bt/host/bluedroid/stack/btm/btm_acl.c @@ -2519,8 +2519,7 @@ tBTM_STATUS btm_remove_acl (BD_ADDR bd_addr, tBT_TRANSPORT transport) } else /* otherwise can disconnect right away */ #endif { - if (hci_handle != 0xFFFF && p_dev_rec && - p_dev_rec->sec_state != BTM_SEC_STATE_DISCONNECTING) { + if (hci_handle != 0xFFFF && (( p_dev_rec && p_dev_rec->sec_state != BTM_SEC_STATE_DISCONNECTING) || (!p_dev_rec))) { if (!btsnd_hcic_disconnect (hci_handle, HCI_ERR_PEER_USER)) { status = BTM_NO_RESOURCES; }