diff --git a/system/bta/dm/bta_dm_act.cc b/system/bta/dm/bta_dm_act.cc index 2ecc3e906afd3037eda023eb39bbb34753837ef2..752a31ffc8cb635cf3cb535255f2486b6714087f 100644 --- a/system/bta/dm/bta_dm_act.cc +++ b/system/bta/dm/bta_dm_act.cc @@ -3996,6 +3996,20 @@ void bta_dm_proc_open_evt(tBTA_GATTC_OPEN* p_data) { } } +/******************************************************************************* + * + * Function bta_dm_proc_open_evt + * + * Description process BTA_GATTC_OPEN_EVT in DM. + * + * Parameters: + * + ******************************************************************************/ +void bta_dm_clear_event_filter(void) { + VLOG(1) << "bta_dm_clear_event_filter in bta_dm_act"; + bluetooth::shim::BTM_ClearEventFilter(); +} + /******************************************************************************* * * Function bta_dm_gattc_callback diff --git a/system/bta/dm/bta_dm_api.cc b/system/bta/dm/bta_dm_api.cc index c9e5166353897d0f42d3b8dddbfba5ed9cfc1b34..5e1a8787f7807c704307861a7689895a29518bfe 100644 --- a/system/bta/dm/bta_dm_api.cc +++ b/system/bta/dm/bta_dm_api.cc @@ -670,3 +670,17 @@ void BTA_DmBleCsisObserve(bool observe, tBTA_DM_SEARCH_CBACK* p_results_cb) { * ******************************************************************************/ void BTA_VendorInit(void) { APPL_TRACE_API("BTA_VendorInit"); } + +/******************************************************************************* + * + * Function BTA_DmClearEventFilter + * + * Description This function clears the event filter + * + * Returns void + * + ******************************************************************************/ +void BTA_DmClearEventFilter(void) { + APPL_TRACE_API("BTA_DmClearEventFilter"); + do_in_main_thread(FROM_HERE, base::Bind(bta_dm_clear_event_filter)); +} diff --git a/system/bta/dm/bta_dm_int.h b/system/bta/dm/bta_dm_int.h index 02d25eb12bc2d358a813dfe693ca7d36e03117c2..e6c5c0cdacd06723c179d0d24d2817b3cc3b8e92 100644 --- a/system/bta/dm/bta_dm_int.h +++ b/system/bta/dm/bta_dm_int.h @@ -553,6 +553,8 @@ extern void bta_dm_disc_rmt_name(tBTA_DM_MSG* p_data); extern tBTA_DM_PEER_DEVICE* bta_dm_find_peer_device( const RawAddress& peer_addr); +extern void bta_dm_clear_event_filter(void); + uint8_t bta_dm_search_get_state(); void bta_dm_search_set_state(uint8_t state); diff --git a/system/bta/include/bta_api.h b/system/bta/include/bta_api.h index 701de0aee89c07e9e4a6be668beb953c2be37711..3c0bd4b38a35f67c6ad962f256edc326e6c66fd5 100644 --- a/system/bta/include/bta_api.h +++ b/system/bta/include/bta_api.h @@ -1194,4 +1194,15 @@ extern void BTA_DmBleGetEnergyInfo(tBTA_BLE_ENERGY_INFO_CBACK* p_cmpl_cback); ******************************************************************************/ extern void BTA_VendorInit(void); +/******************************************************************************* + * + * Function BTA_DmClearEventFilter + * + * Description This function clears the event filter + * + * Returns void + * + ******************************************************************************/ +extern void BTA_DmClearEventFilter(void); + #endif /* BTA_API_H */ diff --git a/system/test/mock/mock_bta_dm_act.h b/system/test/mock/mock_bta_dm_act.h index 2c99aa172d5692a3f02dc91a1314ce89665f676a..5a566dcb7dece4e7a36922fd8ac571d92cc7e06b 100644 --- a/system/test/mock/mock_bta_dm_act.h +++ b/system/test/mock/mock_bta_dm_act.h @@ -255,6 +255,15 @@ struct bta_dm_ble_observe { }; extern struct bta_dm_ble_observe bta_dm_ble_observe; +// Name: bta_dm_clear_event_filter +// Params: None +// Return: void +struct bta_dm_clear_event_filter { + std::function<void()> body{[]() {}}; + void operator()() { body(); }; +}; +extern struct bta_dm_clear_event_filter bta_dm_clear_event_filter; + // Name: bta_dm_ble_passkey_reply // Params: const RawAddress& bd_addr, bool accept, uint32_t passkey // Return: void