diff options
| author | Christopher Tate <ctate@google.com> | 2009-07-07 14:23:07 -0700 |
|---|---|---|
| committer | Christopher Tate <ctate@google.com> | 2009-07-07 14:23:07 -0700 |
| commit | 3d7cd13e772bde1c4a72fa4e740baa03cb042e6c (patch) | |
| tree | 528066c5c4eb44a792a009ad22425200141fe041 | |
| parent | a5188a09bd20c376b4f0645b0df4c52f8e114e21 (diff) | |
| download | frameworks_base-3d7cd13e772bde1c4a72fa4e740baa03cb042e6c.zip frameworks_base-3d7cd13e772bde1c4a72fa4e740baa03cb042e6c.tar.gz frameworks_base-3d7cd13e772bde1c4a72fa4e740baa03cb042e6c.tar.bz2 | |
Fix the metadata-available test during restore
| -rw-r--r-- | services/java/com/android/server/BackupManagerService.java | 3 | ||||
| -rw-r--r-- | services/java/com/android/server/PackageManagerBackupAgent.java | 7 |
2 files changed, 8 insertions, 2 deletions
diff --git a/services/java/com/android/server/BackupManagerService.java b/services/java/com/android/server/BackupManagerService.java index 2ae9fc5..80697a1 100644 --- a/services/java/com/android/server/BackupManagerService.java +++ b/services/java/com/android/server/BackupManagerService.java @@ -985,8 +985,7 @@ class BackupManagerService extends IBackupManager.Stub { // Verify that the backup set includes metadata. If not, we can't do // signature/version verification etc, so we simply do not proceed with // the restore operation. - Metadata pmMeta = pmAgent.getRestoredMetadata(packageName); - if (pmMeta == null) { + if (!pmAgent.hasMetadata()) { Log.i(TAG, "No restore metadata available, so not restoring settings"); return; } diff --git a/services/java/com/android/server/PackageManagerBackupAgent.java b/services/java/com/android/server/PackageManagerBackupAgent.java index a1b4c26..786f423 100644 --- a/services/java/com/android/server/PackageManagerBackupAgent.java +++ b/services/java/com/android/server/PackageManagerBackupAgent.java @@ -67,6 +67,7 @@ public class PackageManagerBackupAgent extends BackupAgent { private final HashSet<String> mExisting = new HashSet<String>(); private int mStoredSdkVersion; private String mStoredIncrementalVersion; + private boolean mHasMetadata; public class Metadata { public int versionCode; @@ -84,6 +85,11 @@ public class PackageManagerBackupAgent extends BackupAgent { mPackageManager = packageMgr; mAllPackages = packages; mRestoredSignatures = null; + mHasMetadata = false; + } + + public boolean hasMetadata() { + return mHasMetadata; } public Metadata getRestoredMetadata(String packageName) { @@ -259,6 +265,7 @@ public class PackageManagerBackupAgent extends BackupAgent { } mStoredSdkVersion = storedSdkVersion; mStoredIncrementalVersion = in.readUTF(); + mHasMetadata = true; // !!! TODO: remove this debugging output if (DEBUG) { Log.i(TAG, "Restore set version " + storedSystemVersion |
