diff options
author | Christopher Tate <ctate@google.com> | 2014-07-16 12:15:07 -0700 |
---|---|---|
committer | Christopher Tate <ctate@google.com> | 2014-07-16 13:10:58 -0700 |
commit | a176d22110a1670f363ba0f745f127d2b6ca2350 (patch) | |
tree | e29f8208c1d3de0773e7697f049e3a53f6ec8c8a /core/java/android/app/backup | |
parent | ac17c2a8c9ba85efdd35f0262d05a41554eb3775 (diff) | |
download | frameworks_base-a176d22110a1670f363ba0f745f127d2b6ca2350.zip frameworks_base-a176d22110a1670f363ba0f745f127d2b6ca2350.tar.gz frameworks_base-a176d22110a1670f363ba0f745f127d2b6ca2350.tar.bz2 |
Always call finishBackup() if performFullBackup() succeeded
Even if we later get an error from sendBackupData() we need to give
the transport its teardown callback. This simplifies the transport
logic considerably.
Change-Id: Ib8c0e210d4a876ee6b083a4d619dfccc462da4e5
Diffstat (limited to 'core/java/android/app/backup')
-rw-r--r-- | core/java/android/app/backup/BackupTransport.java | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/core/java/android/app/backup/BackupTransport.java b/core/java/android/app/backup/BackupTransport.java index ba2930b..28108a0 100644 --- a/core/java/android/app/backup/BackupTransport.java +++ b/core/java/android/app/backup/BackupTransport.java @@ -331,6 +331,10 @@ public class BackupTransport { * its datastore, if appropriate, and close the socket that had been provided in * {@link #performFullBackup(PackageInfo, ParcelFileDescriptor)}. * + * <p class="note">If the transport returns TRANSPORT_OK from this method, then the + * OS will always provide a matching call to {@link #finishBackup()} even if sending + * data via {@link #sendBackupData(int)} failed at some point. + * * @param targetPackage The package whose data is to follow. * @param socket The socket file descriptor through which the data will be provided. * If the transport returns {@link #TRANSPORT_PACKAGE_REJECTED} here, it must still |