Delete rollbacks when build fingerprint has changed (1/n)

Bug: 148688328
Test: atest CtsRollbackManagerHostTestCases
Change-Id: Ia2ec05d421b91f8576510b838afe560dea58d5b6
This commit is contained in:
JW Wang
2020-02-10 16:22:40 +08:00
parent d1c18006cd
commit 529d3aa46b

View File

@@ -164,8 +164,16 @@ class RollbackManagerServiceImpl extends IRollbackManager.Stub {
// Load rollback data from device storage.
synchronized (mLock) {
mRollbacks = mRollbackStore.loadRollbacks();
for (Rollback rollback : mRollbacks) {
mAllocatedRollbackIds.put(rollback.info.getRollbackId(), true);
if (!context.getPackageManager().isDeviceUpgrading()) {
for (Rollback rollback : mRollbacks) {
mAllocatedRollbackIds.put(rollback.info.getRollbackId(), true);
}
} else {
// Delete rollbacks when build fingerprint has changed.
for (Rollback rollback : mRollbacks) {
rollback.delete(mAppDataRollbackHelper);
}
mRollbacks.clear();
}
}