summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
author Martijn Coenen <maco@google.com> 2018-10-01 10:17:06 +0200
committer Martijn Coenen <maco@google.com> 2018-11-07 21:09:39 +0100
commit2a5c839dad8fce78cdd6ea93d37f1607f29a33da (patch)
tree9c35d8f8ea90c89f5d2a389ebe304552ae68d51e
parent50619770805796dbec93eb9378c8dc21f6f66f7d (diff)
Fix getDefaultDisplayHomeActivityForUser.
And check for null HomeActivity record, To fix NullPointerException in ActivityManagerService. Bug: 116875894 Test: builds Change-Id: I543c235011bf668e0b1bfbc4252a41c49490ac27
-rw-r--r--services/core/java/com/android/server/wm/ActivityStackSupervisor.java3
-rw-r--r--services/core/java/com/android/server/wm/ActivityTaskManagerService.java7
2 files changed, 6 insertions, 4 deletions
diff --git a/services/core/java/com/android/server/wm/ActivityStackSupervisor.java b/services/core/java/com/android/server/wm/ActivityStackSupervisor.java
index 77b331e6c4a9..f040dd41002b 100644
--- a/services/core/java/com/android/server/wm/ActivityStackSupervisor.java
+++ b/services/core/java/com/android/server/wm/ActivityStackSupervisor.java
@@ -2611,8 +2611,7 @@ public class ActivityStackSupervisor extends ConfigurationContainer implements D
}
ActivityRecord getDefaultDisplayHomeActivityForUser(int userId) {
- getActivityDisplay(DEFAULT_DISPLAY).getHomeActivityForUser(userId);
- return null;
+ return getActivityDisplay(DEFAULT_DISPLAY).getHomeActivityForUser(userId);
}
void resizeStackLocked(ActivityStack stack, Rect bounds, Rect tempTaskBounds,
diff --git a/services/core/java/com/android/server/wm/ActivityTaskManagerService.java b/services/core/java/com/android/server/wm/ActivityTaskManagerService.java
index 3ede8bc818e0..195f0485117e 100644
--- a/services/core/java/com/android/server/wm/ActivityTaskManagerService.java
+++ b/services/core/java/com/android/server/wm/ActivityTaskManagerService.java
@@ -6296,8 +6296,11 @@ public class ActivityTaskManagerService extends IActivityTaskManager.Stub {
FLAG_ACTIVITY_TASK_ON_HOME);
ActivityOptions activityOptions = options != null
? new ActivityOptions(options) : ActivityOptions.makeBasic();
- activityOptions.setLaunchTaskId(
- mStackSupervisor.getDefaultDisplayHomeActivity().getTask().taskId);
+ final ActivityRecord homeActivity =
+ mStackSupervisor.getDefaultDisplayHomeActivity();
+ if (homeActivity != null) {
+ activityOptions.setLaunchTaskId(homeActivity.getTask().taskId);
+ }
mContext.startActivityAsUser(intent, activityOptions.toBundle(),
UserHandle.CURRENT);
} finally {