From 8b85f83785f2cf7d17b6a87812e35716a88fdd8e Mon Sep 17 00:00:00 2001 From: Stefan Andonian Date: Wed, 18 Jan 2023 18:15:30 +0000 Subject: [PATCH] Add null check for NPE in FolderIcon. Bug: 265298513 Test: N/A Change-Id: Id55bd488c40edcca376df2843b1a1999aeb944be --- src/com/android/launcher3/folder/FolderIcon.java | 14 ++++++++++---- 1 file changed, 10 insertions(+), 4 deletions(-) diff --git a/src/com/android/launcher3/folder/FolderIcon.java b/src/com/android/launcher3/folder/FolderIcon.java index 60442f452b..e69f7811e7 100644 --- a/src/com/android/launcher3/folder/FolderIcon.java +++ b/src/com/android/launcher3/folder/FolderIcon.java @@ -41,6 +41,7 @@ import android.view.ViewGroup; import android.widget.FrameLayout; import androidx.annotation.NonNull; +import androidx.annotation.Nullable; import com.android.launcher3.Alarm; import com.android.launcher3.BubbleTextView; @@ -181,8 +182,11 @@ public class FolderIcon extends FrameLayout implements FolderListener, IconLabel return icon; } - public static FolderIcon inflateIcon(int resId, ActivityContext activity, ViewGroup group, - FolderInfo folderInfo) { + /** + * Builds a FolderIcon to be added to the Launcher + */ + public static FolderIcon inflateIcon(int resId, ActivityContext activity, + @Nullable ViewGroup group, FolderInfo folderInfo) { @SuppressWarnings("all") // suppress dead code warning final boolean error = INITIAL_ITEM_ANIMATION_DURATION >= DROP_IN_ANIMATION_DURATION; if (error) { @@ -192,8 +196,10 @@ public class FolderIcon extends FrameLayout implements FolderListener, IconLabel } DeviceProfile grid = activity.getDeviceProfile(); - FolderIcon icon = (FolderIcon) LayoutInflater.from(group.getContext()) - .inflate(resId, group, false); + LayoutInflater inflater = (group != null) + ? LayoutInflater.from(group.getContext()) + : activity.getLayoutInflater(); + FolderIcon icon = (FolderIcon) inflater.inflate(resId, group, false); icon.setClipToPadding(false); icon.mFolderName = icon.findViewById(R.id.folder_icon_name);