summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorAjay Panicker <apanicke@google.com>2018-06-12 10:34:39 -0700
committerAjay Panicker <apanicke@google.com>2018-06-12 11:02:06 -0700
commit5851f9b5afe30aea8625e56fc2192befb63c663b (patch)
tree33599fc1f380475d60cad9991139397ad8d4e080 /src
parent1f5d1506692310e7ceaf5959058a849ee5711cf9 (diff)
downloadandroid_packages_apps_Bluetooth-5851f9b5afe30aea8625e56fc2192befb63c663b.tar.gz
android_packages_apps_Bluetooth-5851f9b5afe30aea8625e56fc2192befb63c663b.tar.bz2
android_packages_apps_Bluetooth-5851f9b5afe30aea8625e56fc2192befb63c663b.zip
Prevent crash when a Browsable player has an empty root
Bug: 110051940 Test: runtest bluetooth -c com.android.bluetooth.avrcp.BrowserPlayerWrapperTest Change-Id: I2d6db2814f3ea61e95e0a1cc8417274f103af5de (cherry picked from commit acdf7d6bc28bdda01a3918772d0082fa75bc91c5)
Diffstat (limited to 'src')
-rw-r--r--src/com/android/bluetooth/newavrcp/BrowsedPlayerWrapper.java10
1 files changed, 9 insertions, 1 deletions
diff --git a/src/com/android/bluetooth/newavrcp/BrowsedPlayerWrapper.java b/src/com/android/bluetooth/newavrcp/BrowsedPlayerWrapper.java
index bd75ae387..93afd178e 100644
--- a/src/com/android/bluetooth/newavrcp/BrowsedPlayerWrapper.java
+++ b/src/com/android/bluetooth/newavrcp/BrowsedPlayerWrapper.java
@@ -207,7 +207,15 @@ class BrowsedPlayerWrapper {
Log.i(TAG, "onConnected: " + mPackageName + " is connected");
// Get the root while connected because we may need to use it when disconnected.
mRoot = mWrappedBrowser.getRoot();
- if (mCallback != null) mCallback.run(STATUS_SUCCESS, BrowsedPlayerWrapper.this);
+
+ if (mCallback == null) return;
+
+ if (mRoot == null || mRoot.isEmpty()) {
+ mCallback.run(STATUS_CONN_ERROR, BrowsedPlayerWrapper.this);
+ return;
+ }
+
+ mCallback.run(STATUS_SUCCESS, BrowsedPlayerWrapper.this);
mCallback = null;
}