summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--services/core/java/com/android/server/am/ActivityStackSupervisor.java14
1 files changed, 12 insertions, 2 deletions
diff --git a/services/core/java/com/android/server/am/ActivityStackSupervisor.java b/services/core/java/com/android/server/am/ActivityStackSupervisor.java
index c54a96d..f967aef 100644
--- a/services/core/java/com/android/server/am/ActivityStackSupervisor.java
+++ b/services/core/java/com/android/server/am/ActivityStackSupervisor.java
@@ -883,8 +883,18 @@ public final class ActivityStackSupervisor implements DisplayListener {
void startHomeActivity(Intent intent, ActivityInfo aInfo, String reason) {
moveHomeStackTaskToTop(HOME_ACTIVITY_TYPE, reason);
- startActivityLocked(null, intent, null, aInfo, null, null, null, null, 0, 0, 0, null,
- 0, 0, 0, null, false, null, null, null);
+ startActivityLocked(null /* caller */, intent, null /* resolvedType */, aInfo,
+ null /* voiceSession */, null /* voiceInteractor */, null /* resultTo */,
+ null /* resultWho */, 0 /* requestCode */, 0 /* callingPid */, 0 /* callingUid */,
+ null /* callingPackage */, 0 /* realCallingPid */, 0 /* realCallingUid */,
+ 0 /* startFlags */, null /* options */, false /* componentSpecified */,
+ null /* outActivity */, null /* container */, null /* inTask */);
+ if (inResumeTopActivity) {
+ // If we are in resume section already, home activity will be initialized, but not
+ // resumed (to avoid recursive resume) and will stay that way until something pokes it
+ // again. We need to schedule another resume.
+ scheduleResumeTopActivities();
+ }
}
final int startActivityMayWait(IApplicationThread caller, int callingUid,