summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorBrad Fitzpatrick <bradfitz@android.com>2010-09-07 11:12:51 -0700
committerAndroid (Google) Code Review <android-gerrit@google.com>2010-09-07 11:12:51 -0700
commitb1104b3713febb75164938a465c3022e1879245f (patch)
tree85e9e9aa3ecb7f848508c4a469b4b3a8721e14b8
parent745e751b251baa38e94dfce1fe264574d0204cc2 (diff)
parent6f9d58ac62366b13a1eac00d58ebc84f03cea3f2 (diff)
downloadframeworks_base-b1104b3713febb75164938a465c3022e1879245f.zip
frameworks_base-b1104b3713febb75164938a465c3022e1879245f.tar.gz
frameworks_base-b1104b3713febb75164938a465c3022e1879245f.tar.bz2
Merge "Make SharedPreferencesBackupHelper wait for async SharedPreference writes" into gingerbread
-rw-r--r--core/java/android/app/backup/SharedPreferencesBackupHelper.java8
1 files changed, 6 insertions, 2 deletions
diff --git a/core/java/android/app/backup/SharedPreferencesBackupHelper.java b/core/java/android/app/backup/SharedPreferencesBackupHelper.java
index 23b1703..213bd31 100644
--- a/core/java/android/app/backup/SharedPreferencesBackupHelper.java
+++ b/core/java/android/app/backup/SharedPreferencesBackupHelper.java
@@ -16,6 +16,7 @@
package android.app.backup;
+import android.app.QueuedWork;
import android.content.Context;
import android.content.SharedPreferences;
import android.os.ParcelFileDescriptor;
@@ -94,7 +95,11 @@ public class SharedPreferencesBackupHelper extends FileBackupHelperBase implemen
public void performBackup(ParcelFileDescriptor oldState, BackupDataOutput data,
ParcelFileDescriptor newState) {
Context context = mContext;
-
+
+ // If a SharedPreference has an outstanding write in flight,
+ // wait for it to finish flushing to disk.
+ QueuedWork.waitToFinish();
+
// make filenames for the prefGroups
String[] prefGroups = mPrefGroups;
final int N = prefGroups.length;
@@ -123,4 +128,3 @@ public class SharedPreferencesBackupHelper extends FileBackupHelperBase implemen
}
}
}
-