diff --git a/system/bta/dm/bta_dm_act.cc b/system/bta/dm/bta_dm_act.cc index b8476af08b004f28b4d690a437312c05beca815c..baffbb0da0661bdf38545a970a0a0ea8145131bb 100644 --- a/system/bta/dm/bta_dm_act.cc +++ b/system/bta/dm/bta_dm_act.cc @@ -333,7 +333,7 @@ void BTA_dm_on_hw_off() { /* hw is ready, go on with BTA DM initialization */ alarm_free(bta_dm_search_cb.search_timer); alarm_free(bta_dm_search_cb.gatt_close_timer); - osi_free(bta_dm_search_cb.p_pending_search); + osi_free_and_reset((void**)&bta_dm_search_cb.p_pending_search); fixed_queue_free(bta_dm_search_cb.pending_discovery_queue, osi_free); memset(&bta_dm_search_cb, 0, sizeof(bta_dm_search_cb)); } @@ -354,7 +354,7 @@ void BTA_dm_on_hw_on() { /* hw is ready, go on with BTA DM initialization */ alarm_free(bta_dm_search_cb.search_timer); alarm_free(bta_dm_search_cb.gatt_close_timer); - osi_free(bta_dm_search_cb.p_pending_search); + osi_free_and_reset((void**)&bta_dm_search_cb.p_pending_search); fixed_queue_free(bta_dm_search_cb.pending_discovery_queue, osi_free); memset(&bta_dm_search_cb, 0, sizeof(bta_dm_search_cb)); /*