From 908e3d1312693682642a3093c11df13a9c1583d0 Mon Sep 17 00:00:00 2001 From: Sunny Goyal Date: Fri, 30 Apr 2021 14:18:08 -0700 Subject: [PATCH] Fixing nullPointer exception when wallpaper colors is null Bug: 186722571 Test: Presubmit Change-Id: Iee0d15d460de47cc20395cf9f3d92784aef6268e --- src/com/android/launcher3/util/Themes.java | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/src/com/android/launcher3/util/Themes.java b/src/com/android/launcher3/util/Themes.java index 11b856e266..99942aa56d 100644 --- a/src/com/android/launcher3/util/Themes.java +++ b/src/com/android/launcher3/util/Themes.java @@ -19,6 +19,7 @@ package com.android.launcher3.util; import static android.app.WallpaperColors.HINT_SUPPORTS_DARK_TEXT; import static android.app.WallpaperColors.HINT_SUPPORTS_DARK_THEME; +import android.app.WallpaperColors; import android.app.WallpaperManager; import android.content.Context; import android.content.res.Configuration; @@ -41,9 +42,14 @@ import com.android.launcher3.icons.GraphicsUtils; public class Themes { public static int getActivityThemeRes(Context context) { - int colorHints = Utilities.ATLEAST_P ? context.getSystemService(WallpaperManager.class) - .getWallpaperColors(WallpaperManager.FLAG_SYSTEM).getColorHints() - : 0; + final int colorHints; + if (Utilities.ATLEAST_P) { + WallpaperColors colors = context.getSystemService(WallpaperManager.class) + .getWallpaperColors(WallpaperManager.FLAG_SYSTEM); + colorHints = colors == null ? 0 : colors.getColorHints(); + } else { + colorHints = 0; + } return getActivityThemeRes(context, colorHints); }