summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/com/android/server/telecom/bluetooth/BluetoothRouteManager.java14
1 files changed, 10 insertions, 4 deletions
diff --git a/src/com/android/server/telecom/bluetooth/BluetoothRouteManager.java b/src/com/android/server/telecom/bluetooth/BluetoothRouteManager.java
index ba56145e7..f72c34232 100644
--- a/src/com/android/server/telecom/bluetooth/BluetoothRouteManager.java
+++ b/src/com/android/server/telecom/bluetooth/BluetoothRouteManager.java
@@ -597,14 +597,20 @@ public class BluetoothRouteManager extends StateMachine {
String actualAddress = matchingDevice.isPresent()
? address : getActiveDeviceAddress();
+ if (actualAddress == null) {
+ Log.i(this, "No device specified and BT stack has no active device."
+ + " Using arbitrary device");
+ if (deviceList.size() > 0) {
+ actualAddress = deviceList.iterator().next().getAddress();
+ } else {
+ Log.i(this, "No devices available at all. Not connecting.");
+ return null;
+ }
+ }
if (!matchingDevice.isPresent()) {
Log.i(this, "No device with address %s available. Using %s instead.",
address, actualAddress);
}
- if (actualAddress == null) {
- Log.i(this, "No device specified and BT stack has no active device. Not connecting.");
- return null;
- }
if (!connectAudio(actualAddress)) {
boolean shouldRetry = retryCount < MAX_CONNECTION_RETRIES;
Log.w(LOG_TAG, "Could not connect to %s. Will %s", actualAddress,