Skip to content

Commit 25073dd

Browse files
committed
Fixed issue with not finding existing activity for background user
We currently go through the list of existing activities to find a match for the launching intent so we can re-use the activity record if one already exist. However, we exit the search early once we run across an activity record that doesn't belong to the current foreground user. This will cause us to create duplicate activity records if the launching intent is for a backround user and an activity record already exist. Based on https://android-review.googlesource.com/#/c/159131 Bug: 22564256 Change-Id: I4b6d94059c11fd2e621e65c8ec2c99427c15b246
1 parent e6b407b commit 25073dd

1 file changed

Lines changed: 1 addition & 4 deletions

File tree

services/core/java/com/android/server/am/ActivityStack.java

Lines changed: 1 addition & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -617,12 +617,9 @@ ActivityRecord findActivityLocked(Intent intent, ActivityInfo info) {
617617
for (int activityNdx = activities.size() - 1; activityNdx >= 0; --activityNdx) {
618618
ActivityRecord r = activities.get(activityNdx);
619619
if (notCurrentUserTask && (r.info.flags & FLAG_SHOW_FOR_ALL_USERS) == 0) {
620-
return null;
620+
continue;
621621
}
622622
if (!r.finishing && r.intent.getComponent().equals(cls) && r.userId == userId) {
623-
//Slog.i(TAG, "Found matching class!");
624-
//dump();
625-
//Slog.i(TAG, "For Intent " + intent + " bringing to top: " + r.intent);
626623
return r;
627624
}
628625
}

0 commit comments

Comments
 (0)