From b2b305fd5d625961c5f5f5a8fb954bcb12d171c1 Mon Sep 17 00:00:00 2001 From: liqigan Date: Fri, 8 Sep 2023 11:53:41 +0800 Subject: [PATCH] change(bt/bluedroid): Limit sniff request when pending mode change event --- components/bt/host/bluedroid/stack/btm/btm_pm.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/components/bt/host/bluedroid/stack/btm/btm_pm.c b/components/bt/host/bluedroid/stack/btm/btm_pm.c index 5f1950e02a..4c52348ecd 100644 --- a/components/bt/host/bluedroid/stack/btm/btm_pm.c +++ b/components/bt/host/bluedroid/stack/btm/btm_pm.c @@ -243,7 +243,8 @@ tBTM_STATUS BTM_SetPowerMode (UINT8 pm_id, BD_ADDR remote_bda, tBTM_PM_PWR_MD *p /* if mode == hold or pending, return */ if ( (p_cb->state == BTM_PM_STS_HOLD) || (p_cb->state == BTM_PM_STS_PENDING) || - (btm_cb.pm_pend_link_hdl != BTM_INVALID_HANDLE) ) { /* command pending */ + (btm_cb.pm_pend_link_hdl != BTM_INVALID_HANDLE) || + (p_cb->state & BTM_PM_STORED_MASK) ) { /* command pending */ if (p_acl_cb->hci_handle != btm_cb.pm_pend_link_hdl) { /* set the stored mask */ p_cb->state |= BTM_PM_STORED_MASK;