Persist/pacel # of periodic syncs properly.
(Note it shouldn't be persisting parceled data in the first place. There's
already a bug filed for that.)
Bug 63935632
Test: manaul test
Change-Id: I5385caa6cd0663c7e13db0256b2c1027abe6c3a1
diff --git a/core/java/android/content/SyncStatusInfo.java b/core/java/android/content/SyncStatusInfo.java
index 663e6e4..abf9cc9 100644
--- a/core/java/android/content/SyncStatusInfo.java
+++ b/core/java/android/content/SyncStatusInfo.java
@@ -26,7 +26,7 @@
public class SyncStatusInfo implements Parcelable {
private static final String TAG = "Sync";
- static final int VERSION = 3;
+ static final int VERSION = 4;
private static final int MAX_EVENT_COUNT = 10;
@@ -102,6 +102,7 @@
parcel.writeLong(mLastEventTimes.get(i));
parcel.writeString(mLastEvents.get(i));
}
+ parcel.writeInt(numSourcePeriodic);
}
public SyncStatusInfo(Parcel parcel) {
@@ -146,6 +147,16 @@
}
}
}
+ if (version < 4) {
+ // Before version 4, numSourcePeriodic wasn't persisted.
+ numSourcePeriodic = numSyncs - numSourceLocal - numSourcePoll - numSourceServer
+ - numSourceUser;
+ if (numSourcePeriodic < 0) { // Sanity check.
+ numSourcePeriodic = 0;
+ }
+ } else {
+ numSourcePeriodic = parcel.readInt();
+ }
}
public SyncStatusInfo(SyncStatusInfo other) {