Merge "Do not write if apply() did not change the file. am: ea10cc0fbb" into nyc-mr2-dev-plus-aosp
diff --git a/core/java/android/app/SharedPreferencesImpl.java b/core/java/android/app/SharedPreferencesImpl.java
index c5a8288..f273cd8 100644
--- a/core/java/android/app/SharedPreferencesImpl.java
+++ b/core/java/android/app/SharedPreferencesImpl.java
@@ -592,17 +592,17 @@
if (mFile.exists()) {
boolean needsWrite = false;
- if (isFromSyncCommit) {
- // Only need to write if the disk state is older than this commit
- if (mDiskStateGeneration < mcr.memoryStateGeneration) {
+ // Only need to write if the disk state is older than this commit
+ if (mDiskStateGeneration < mcr.memoryStateGeneration) {
+ if (isFromSyncCommit) {
needsWrite = true;
- }
- } else {
- synchronized (this) {
- // No need to persist intermediate states. Just wait for the latest state to be
- // persisted.
- if (mCurrentMemoryStateGeneration == mcr.memoryStateGeneration) {
- needsWrite = true;
+ } else {
+ synchronized (this) {
+ // No need to persist intermediate states. Just wait for the latest state to
+ // be persisted.
+ if (mCurrentMemoryStateGeneration == mcr.memoryStateGeneration) {
+ needsWrite = true;
+ }
}
}
}