diff options
author | Android (Google) Code Review <android-gerrit@google.com> | 2009-07-02 14:30:56 -0700 |
---|---|---|
committer | Android (Google) Code Review <android-gerrit@google.com> | 2009-07-02 14:30:56 -0700 |
commit | e15df4017c3625de700e9f9953073f38898bbc89 (patch) | |
tree | cfdb4b3aa0957fecff028e30ac3eb93e21c3108c | |
parent | fe11ea5e2df4a4414aa266e93179c3098b03a795 (diff) | |
parent | 8c0324752a7f47afd9e84f0a3088954b5d05a94b (diff) | |
download | frameworks_base-e15df4017c3625de700e9f9953073f38898bbc89.zip frameworks_base-e15df4017c3625de700e9f9953073f38898bbc89.tar.gz frameworks_base-e15df4017c3625de700e9f9953073f38898bbc89.tar.bz2 |
Merge change 6132 into donut
* changes:
If we can't get the restore set's metadata, don't continue
-rw-r--r-- | services/java/com/android/server/BackupManagerService.java | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/services/java/com/android/server/BackupManagerService.java b/services/java/com/android/server/BackupManagerService.java index c3b9157..7977d1f 100644 --- a/services/java/com/android/server/BackupManagerService.java +++ b/services/java/com/android/server/BackupManagerService.java @@ -943,6 +943,15 @@ class BackupManagerService extends IBackupManager.Stub { mPackageManager, agentPackages); processOneRestore(omPackage, 0, IBackupAgent.Stub.asInterface(pmAgent.onBind())); + // 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) { + Log.i(TAG, "No restore metadata available, so not restoring settings"); + return; + } + int count = 0; for (;;) { packageName = mTransport.nextRestorePackage(); |