summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--services/core/java/com/android/server/am/ActivityStartInterceptor.java10
1 files changed, 7 insertions, 3 deletions
diff --git a/services/core/java/com/android/server/am/ActivityStartInterceptor.java b/services/core/java/com/android/server/am/ActivityStartInterceptor.java
index a2c2040b5c51..f26e47e934c4 100644
--- a/services/core/java/com/android/server/am/ActivityStartInterceptor.java
+++ b/services/core/java/com/android/server/am/ActivityStartInterceptor.java
@@ -186,9 +186,13 @@ class ActivityStartInterceptor {
if (mActivityOptions == null) {
mActivityOptions = ActivityOptions.makeBasic();
}
- // Showing credential confirmation activity in home task to avoid stopping multi-windowed
- // mode after showing the full-screen credential confirmation activity.
- mActivityOptions.setLaunchTaskId(mSupervisor.getHomeActivity().task.taskId);
+
+ ActivityRecord homeActivityRecord = mSupervisor.getHomeActivity();
+ if (homeActivityRecord != null && homeActivityRecord.task != null) {
+ // Showing credential confirmation activity in home task to avoid stopping multi-windowed
+ // mode after showing the full-screen credential confirmation activity.
+ mActivityOptions.setLaunchTaskId(homeActivityRecord.task.taskId);
+ }
final UserInfo parent = mUserManager.getProfileParent(mUserId);
mRInfo = mSupervisor.resolveIntent(mIntent, mResolvedType, parent.id);