Rollbacks shouldn't be removed when it session expires (1/n)

Once a rollback is made available, the status of its associated session
no longer matters.

Bug: 185132440
Test: Will be added in next CL
Test: atest StagedRollbackTest
Change-Id: I3c2b718905d2d7619d6f299ee5402fd858de030e
This commit is contained in:
JW Wang
2021-04-13 16:12:29 +08:00
parent b6a266158d
commit 80005cd697

View File

@@ -613,9 +613,11 @@ class RollbackManagerServiceImpl extends IRollbackManager.Stub implements Rollba
PackageInstaller.SessionInfo session = mContext.getPackageManager()
.getPackageInstaller().getSessionInfo(rollback.getStagedSessionId());
if (session == null || session.isStagedSessionFailed()) {
iter.remove();
deleteRollback(rollback,
"Session " + rollback.getStagedSessionId() + " not existed or failed");
if (rollback.isEnabling()) {
iter.remove();
deleteRollback(rollback, "Session " + rollback.getStagedSessionId()
+ " not existed or failed");
}
continue;
}