diff options
| author | 2018-10-01 10:17:06 +0200 | |
|---|---|---|
| committer | 2018-11-07 21:09:39 +0100 | |
| commit | 2a5c839dad8fce78cdd6ea93d37f1607f29a33da (patch) | |
| tree | 9c35d8f8ea90c89f5d2a389ebe304552ae68d51e | |
| parent | 50619770805796dbec93eb9378c8dc21f6f66f7d (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.java | 3 | ||||
| -rw-r--r-- | services/core/java/com/android/server/wm/ActivityTaskManagerService.java | 7 |
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 { |