]> granicus.if.org Git - esp-idf/commitdiff
component/bt: Added the judgment to check the address is public or not.
authorYulong <huangyulong@espressif.com>
Wed, 14 Jun 2017 13:01:29 +0000 (09:01 -0400)
committerYulong <huangyulong@espressif.com>
Wed, 14 Jun 2017 13:01:29 +0000 (09:01 -0400)
components/bt/bluedroid/stack/btm/btm_ble_addr.c

index 5c4c772e6c9ba50175cad9f5b6ed078aa7ad31f0..4f6c443a5b62d3cb2c2560e0d2f7ea60140da1a8 100644 (file)
@@ -494,7 +494,7 @@ BOOLEAN btm_random_pseudo_to_identity_addr(BD_ADDR random_pseudo, UINT8 *p_stati
         if (p_dev_rec->ble.in_controller_list & BTM_RESOLVING_LIST_BIT) {
             * p_static_addr_type = p_dev_rec->ble.static_addr_type;
             memcpy(random_pseudo, p_dev_rec->ble.static_addr, BD_ADDR_LEN);
-            if (controller_get_interface()->supports_ble_privacy()) {
+            if (controller_get_interface()->supports_ble_privacy() && p_dev_rec->ble.ble_addr_type != BLE_ADDR_PUBLIC) {
                 *p_static_addr_type |= BLE_ADDR_TYPE_ID_BIT;
             }
             return TRUE;