Просмотр исходного кода

fix bluedroid repair faild if the two most significant bits of public address is '01'

zwj 5 лет назад
Родитель
Сommit
5d514fdb35
1 измененных файлов с 1 добавлено и 1 удалено
  1. 1 1
      components/bt/host/bluedroid/stack/btm/btm_ble.c

+ 1 - 1
components/bt/host/bluedroid/stack/btm/btm_ble.c

@@ -1962,7 +1962,7 @@ void btm_ble_conn_complete(UINT8 *p, UINT16 evt_len, BOOLEAN enhanced)
         * slave or master*/
 
         /* if (!match && role == HCI_ROLE_SLAVE && BTM_BLE_IS_RESOLVE_BDA(bda)) { */
-        if (!match && BTM_BLE_IS_RESOLVE_BDA(bda)) {
+        if (!match && bda_type != BLE_ADDR_PUBLIC && BTM_BLE_IS_RESOLVE_BDA(bda)) {
             // save the enhanced value to used in btm_ble_resolve_random_addr_on_conn_cmpl func.
             temp_enhanced = enhanced;
             btm_ble_resolve_random_addr(bda, btm_ble_resolve_random_addr_on_conn_cmpl, p_data);