Merge "Dynamic grouping failed the first time" into rvc-dev
diff --git a/src/com/android/settings/media/MediaOutputGroupSlice.java b/src/com/android/settings/media/MediaOutputGroupSlice.java
index 7730b2d..be6c298 100644
--- a/src/com/android/settings/media/MediaOutputGroupSlice.java
+++ b/src/com/android/settings/media/MediaOutputGroupSlice.java
@@ -83,6 +83,9 @@
         final IconCompat titleIcon = IconCompat.createWithResource(mContext,
                 R.drawable.ic_speaker_group_black_24dp);
         final Bitmap emptyBitmap = Bitmap.createBitmap(1, 1, Bitmap.Config.ARGB_8888);
+        if (getWorker() == null) {
+            return listBuilder.build();
+        }
         final int maxVolume = getWorker().getSessionVolumeMax();
         final String title = mContext.getString(R.string.media_output_group);
         final SliceAction primaryAction = SliceAction.createDeeplink(
diff --git a/tests/robotests/src/com/android/settings/media/MediaOutputGroupSliceTest.java b/tests/robotests/src/com/android/settings/media/MediaOutputGroupSliceTest.java
index 4fbcb2d..12e066b 100644
--- a/tests/robotests/src/com/android/settings/media/MediaOutputGroupSliceTest.java
+++ b/tests/robotests/src/com/android/settings/media/MediaOutputGroupSliceTest.java
@@ -157,6 +157,12 @@
     }
 
     @Test
+    public void getSlice_nullWorker_noException() {
+        sMediaDeviceUpdateWorker = null;
+        mMediaOutputGroupSlice.getSlice();
+    }
+
+    @Test
     public void getSlice_withOneSelectableDevice_checkTitle() {
         mSelectableDevices.add(mDevice1);
         mSelectedDevices.add(mDevice1);