summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
author Ashok Mutyala <quic_c_nmutya@quicinc.com> 2021-08-12 10:50:58 +0000
committer Louis Chang <louischang@google.com> 2021-08-19 11:41:49 +0000
commit26d8e9e85a7a7ebc12564ec525c7b719f8eb718b (patch)
tree6fd7ff1a977b34fe1a8272e8015cabbc9b8523b6
parent99e5c70ff088cb92833dfbeb98ffb905f71b7c3b (diff)
RESTRICT AUTOMERGE Avoid the scenario Where taskdisplayarea is null
Problem: Framework Reboot i.e., NPE in android.ui Thread E AndroidRuntime: FATAL EXCEPTION IN SYSTEM PROCESS: android.ui E AndroidRuntime: java.lang.NullPointerException: Attempt to invoke virtual method 'com.android.server.wm.ActivityStack com.android.server.wm.TaskDisplayArea.getRootHomeTask()' on a null object reference E AndroidRuntime: **at com.android.server.wm.ActivityStarter.postStartActivityProcessing(ActivityStarter.java:1486) E AndroidRuntime: **at com.android.server.wm.ActivityStarter.startActivityUnchecked(ActivityStarter.java:1533) E AndroidRuntime: **at com.android.server.wm.ActivityStarter.executeRequest(ActivityStarter.java:1190) E AndroidRuntime: **at com.android.server.wm.ActivityStarter.execute(ActivityStarter.java:673) E AndroidRuntime: **at com.android.server.wm.ActivityStartController.startHomeActivity(ActivityStartController.java:206) Analysis: getDisplayArea in Task and its Super Class is annotated with Nullable and can be return Null. Bug: 196568035 Test: StabilityTest Change-Id: I4f3c8fdca0202591e7ac07aa7b8e3de3b08b2475 Merged-In: I4f3c8fdca0202591e7ac07aa7b8e3de3b08b2475
-rw-r--r--services/core/java/com/android/server/wm/ActivityStarter.java2
1 files changed, 1 insertions, 1 deletions
diff --git a/services/core/java/com/android/server/wm/ActivityStarter.java b/services/core/java/com/android/server/wm/ActivityStarter.java
index 113797c7a307..419a7fa0dd0b 100644
--- a/services/core/java/com/android/server/wm/ActivityStarter.java
+++ b/services/core/java/com/android/server/wm/ActivityStarter.java
@@ -1468,7 +1468,7 @@ class ActivityStarter {
final Task targetTask = r.getTask() != null
? r.getTask()
: mTargetTask;
- if (startedActivityStack == null || targetTask == null) {
+ if (startedActivityStack == null || targetTask == null || !targetTask.isAttached()) {
return;
}