Loading android/app/src/com/android/bluetooth/btservice/RemoteDevices.java +1 −1 Original line number Diff line number Diff line Loading @@ -724,7 +724,7 @@ final class RemoteDevices { break; case AbstractionLayer.BT_PROPERTY_TYPE_OF_DEVICE: if (device.isConsolidated()) { return; break; } // The device type from hal layer, defined in bluetooth.h, // matches the type defined in BluetoothDevice.java Loading framework/java/android/bluetooth/le/ScanFilter.java +4 −5 Original line number Diff line number Diff line Loading @@ -742,11 +742,11 @@ public final class ScanFilter implements Parcelable { * address can be validated using {@link BluetoothAdapter#checkBluetoothAddress}. * <p> * The IRK is used to resolve a static address from a private address. The IRK must be * provided in big endian byte order. * provided in little endian byte order. * * @param deviceAddress the remote device Bluetooth address for the filter * @param addressType indication of the type of address * @param irk non-null byte array representing the Identity Resolving Key * @param irk non-null little endian byte array representing the Identity Resolving Key * * @throws IllegalArgumentException If the {@code deviceAddress} is invalid * @throws IllegalArgumentException if the {@code irk} is invalid length Loading Loading @@ -777,9 +777,8 @@ public final class ScanFilter implements Parcelable { * format of "01:02:03:AB:CD:EF". The device address can be validated using {@link * BluetoothAdapter#checkBluetoothAddress}. * @param addressType indication of the type of address * e.g. {@link BluetoothDevice#ADDRESS_TYPE_PUBLIC} * @param irk non-null byte array representing the Identity Resolving Address; nullable * internally. * @param irk non-null little endian byte array representing the Identity Resolving Key; * nullable internally. * * @throws IllegalArgumentException if the {@code deviceAddress} is invalid * @throws IllegalArgumentException if the {@code addressType} is not PUBLIC or RANDOM Loading system/bta/le_audio/state_machine.cc +2 −2 Original line number Diff line number Diff line Loading @@ -367,12 +367,12 @@ class LeAudioGroupStateMachineImpl : public LeAudioGroupStateMachine { do { auto ases_pair = leAudioDevice->GetAsesByCisId(ase->cis_id); if (ases_pair.sink) { if (ases_pair.sink && ases_pair.sink->active) { ases_pair.sink->cis_conn_hdl = conn_handles[i]; ases_pair.sink->data_path_state = AudioStreamDataPathState::CIS_ASSIGNED; } if (ases_pair.source) { if (ases_pair.source && ases_pair.source->active) { ases_pair.source->cis_conn_hdl = conn_handles[i]; ases_pair.source->data_path_state = AudioStreamDataPathState::CIS_ASSIGNED; Loading system/btif/src/btif_storage.cc +7 −1 Original line number Diff line number Diff line Loading @@ -945,6 +945,10 @@ static void remove_devices_with_sample_ltk() { void btif_storage_load_consolidate_devices(void) { btif_bonded_devices_t bonded_devices; btif_in_fetch_bonded_devices(&bonded_devices, 1); std::unordered_set<RawAddress> bonded_addresses; for (uint16_t i = 0; i < bonded_devices.num_devices; i++) { bonded_addresses.insert(bonded_devices.devices[i]); } std::vector<std::pair<RawAddress, RawAddress>> consolidated_devices; for (uint16_t i = 0; i < bonded_devices.num_devices; i++) { Loading @@ -953,7 +957,9 @@ void btif_storage_load_consolidate_devices(void) { if (btif_storage_get_ble_bonding_key( bonded_devices.devices[i], BTM_LE_KEY_PID, (uint8_t*)&key, sizeof(tBTM_LE_PID_KEYS)) == BT_STATUS_SUCCESS) { if (bonded_devices.devices[i] != key.pid_key.identity_addr) { if (bonded_devices.devices[i] != key.pid_key.identity_addr && bonded_addresses.find(key.pid_key.identity_addr) != bonded_addresses.end()) { LOG_INFO("found consolidated device %s %s", bonded_devices.devices[i].ToString().c_str(), key.pid_key.identity_addr.ToString().c_str()); Loading Loading
android/app/src/com/android/bluetooth/btservice/RemoteDevices.java +1 −1 Original line number Diff line number Diff line Loading @@ -724,7 +724,7 @@ final class RemoteDevices { break; case AbstractionLayer.BT_PROPERTY_TYPE_OF_DEVICE: if (device.isConsolidated()) { return; break; } // The device type from hal layer, defined in bluetooth.h, // matches the type defined in BluetoothDevice.java Loading
framework/java/android/bluetooth/le/ScanFilter.java +4 −5 Original line number Diff line number Diff line Loading @@ -742,11 +742,11 @@ public final class ScanFilter implements Parcelable { * address can be validated using {@link BluetoothAdapter#checkBluetoothAddress}. * <p> * The IRK is used to resolve a static address from a private address. The IRK must be * provided in big endian byte order. * provided in little endian byte order. * * @param deviceAddress the remote device Bluetooth address for the filter * @param addressType indication of the type of address * @param irk non-null byte array representing the Identity Resolving Key * @param irk non-null little endian byte array representing the Identity Resolving Key * * @throws IllegalArgumentException If the {@code deviceAddress} is invalid * @throws IllegalArgumentException if the {@code irk} is invalid length Loading Loading @@ -777,9 +777,8 @@ public final class ScanFilter implements Parcelable { * format of "01:02:03:AB:CD:EF". The device address can be validated using {@link * BluetoothAdapter#checkBluetoothAddress}. * @param addressType indication of the type of address * e.g. {@link BluetoothDevice#ADDRESS_TYPE_PUBLIC} * @param irk non-null byte array representing the Identity Resolving Address; nullable * internally. * @param irk non-null little endian byte array representing the Identity Resolving Key; * nullable internally. * * @throws IllegalArgumentException if the {@code deviceAddress} is invalid * @throws IllegalArgumentException if the {@code addressType} is not PUBLIC or RANDOM Loading
system/bta/le_audio/state_machine.cc +2 −2 Original line number Diff line number Diff line Loading @@ -367,12 +367,12 @@ class LeAudioGroupStateMachineImpl : public LeAudioGroupStateMachine { do { auto ases_pair = leAudioDevice->GetAsesByCisId(ase->cis_id); if (ases_pair.sink) { if (ases_pair.sink && ases_pair.sink->active) { ases_pair.sink->cis_conn_hdl = conn_handles[i]; ases_pair.sink->data_path_state = AudioStreamDataPathState::CIS_ASSIGNED; } if (ases_pair.source) { if (ases_pair.source && ases_pair.source->active) { ases_pair.source->cis_conn_hdl = conn_handles[i]; ases_pair.source->data_path_state = AudioStreamDataPathState::CIS_ASSIGNED; Loading
system/btif/src/btif_storage.cc +7 −1 Original line number Diff line number Diff line Loading @@ -945,6 +945,10 @@ static void remove_devices_with_sample_ltk() { void btif_storage_load_consolidate_devices(void) { btif_bonded_devices_t bonded_devices; btif_in_fetch_bonded_devices(&bonded_devices, 1); std::unordered_set<RawAddress> bonded_addresses; for (uint16_t i = 0; i < bonded_devices.num_devices; i++) { bonded_addresses.insert(bonded_devices.devices[i]); } std::vector<std::pair<RawAddress, RawAddress>> consolidated_devices; for (uint16_t i = 0; i < bonded_devices.num_devices; i++) { Loading @@ -953,7 +957,9 @@ void btif_storage_load_consolidate_devices(void) { if (btif_storage_get_ble_bonding_key( bonded_devices.devices[i], BTM_LE_KEY_PID, (uint8_t*)&key, sizeof(tBTM_LE_PID_KEYS)) == BT_STATUS_SUCCESS) { if (bonded_devices.devices[i] != key.pid_key.identity_addr) { if (bonded_devices.devices[i] != key.pid_key.identity_addr && bonded_addresses.find(key.pid_key.identity_addr) != bonded_addresses.end()) { LOG_INFO("found consolidated device %s %s", bonded_devices.devices[i].ToString().c_str(), key.pid_key.identity_addr.ToString().c_str()); Loading