summaryrefslogtreecommitdiffstats
path: root/services/backup
diff options
context:
space:
mode:
authorChristopher Tate <ctate@google.com>2014-10-09 15:20:24 -0700
committerChristopher Tate <ctate@google.com>2014-10-09 15:20:24 -0700
commit2aa1d18e3acd269ed7a5f5a4843d447735f0676c (patch)
tree4c88e5ed43a9a8201dc04e9b6f7dc040cfdb83c0 /services/backup
parent2c2cb29a3d7f0a90d753b0fa9c32c1fc5cdbff32 (diff)
downloadframeworks_base-2aa1d18e3acd269ed7a5f5a4843d447735f0676c.zip
frameworks_base-2aa1d18e3acd269ed7a5f5a4843d447735f0676c.tar.gz
frameworks_base-2aa1d18e3acd269ed7a5f5a4843d447735f0676c.tar.bz2
Fix bug 17931760 - spurious timeout leads to mayhem
We know a priori that the PMBA metadata package's backup pass doesn't need to be tracked for timeout, because it's run inline rather than as an asynchronous separate-process operation. Change-Id: Ifd21ab3a016917f5e557a38c1c88f8d8ac1337d2
Diffstat (limited to 'services/backup')
-rw-r--r--services/backup/java/com/android/server/backup/BackupManagerService.java5
1 files changed, 5 insertions, 0 deletions
diff --git a/services/backup/java/com/android/server/backup/BackupManagerService.java b/services/backup/java/com/android/server/backup/BackupManagerService.java
index 4d2df24..3694d61 100644
--- a/services/backup/java/com/android/server/backup/BackupManagerService.java
+++ b/services/backup/java/com/android/server/backup/BackupManagerService.java
@@ -2415,6 +2415,11 @@ public class BackupManagerService extends IBackupManager.Stub {
mStatus = invokeAgentForBackup(PACKAGE_MANAGER_SENTINEL,
IBackupAgent.Stub.asInterface(pmAgent.onBind()), mTransport);
addBackupTrace("PMBA invoke: " + mStatus);
+
+ // Because the PMBA is a local instance, it has already executed its
+ // backup callback and returned. Blow away the lingering (spurious)
+ // pending timeout message for it.
+ mBackupHandler.removeMessages(MSG_TIMEOUT);
}
if (mStatus == BackupTransport.TRANSPORT_NOT_INITIALIZED) {