From 8e9904e542286435ba6a2467c67917aa73101356 Mon Sep 17 00:00:00 2001 From: Pranav Date: Mon, 16 May 2022 08:45:58 +0530 Subject: [PATCH] workspace: Fix an npe java.lang.NullPointerException: Attempt to invoke virtual method 'void android.view.ViewGroup.removeView(android.view.View)' on a null object reference at com.android.launcher3.Workspace.removeAllWorkspaceScreens(Workspace.java:608) at com.android.launcher3.Launcher.startBinding(Launcher.java:2203) at com.android.launcher3.model.BaseLoaderResults$WorkspaceBinder.lambda$bind$0(BaseLoaderResults.java:200) at com.android.launcher3.model.BaseLoaderResults$WorkspaceBinder$$ExternalSyntheticLambda7.execute(Unknown Source:0) at com.android.launcher3.model.BaseLoaderResults$WorkspaceBinder.lambda$executeCallbacksTask$9$com-android-launcher3-model-BaseLoaderResults$WorkspaceBinder(BaseLoaderResults.java:260) at com.android.launcher3.model.BaseLoaderResults$WorkspaceBinder$$ExternalSyntheticLambda9.run(Unknown Source:4) at android.os.Handler.handleCallback(Handler.java:938) at android.os.Handler.dispatchMessage(Handler.java:99) at android.os.Looper.loopOnce(Looper.java:201) at android.os.Looper.loop(Looper.java:288) at android.app.ActivityThread.main(ActivityThread.java:7871) at java.lang.reflect.Method.invoke(Native Method) at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:550) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1003) Signed-off-by: Pranav --- src/com/android/launcher3/Workspace.java | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/com/android/launcher3/Workspace.java b/src/com/android/launcher3/Workspace.java index 8ecde1d1f0..d91e214137 100644 --- a/src/com/android/launcher3/Workspace.java +++ b/src/com/android/launcher3/Workspace.java @@ -605,7 +605,10 @@ public class Workspace extends PagedView // Recycle the QSB widget if (mQsb != null) { - ((ViewGroup) mQsb.getParent()).removeView(mQsb); + ViewGroup viewGroup = (ViewGroup) mQsb.getParent(); + if (viewGroup != null) { + viewGroup.removeView(mQsb); + } } // Remove the pages and clear the screen models