Minor SharedPreference clean-up.

Make a member final, line up some comments, and also cache the
expected stat size, not just the mtime.

Change-Id: Ifcc37bd3ab99787280e506deb682200a16da512e
diff --git a/core/java/android/app/ContextImpl.java b/core/java/android/app/ContextImpl.java
index e66f52a..c08f1fc 100644
--- a/core/java/android/app/ContextImpl.java
+++ b/core/java/android/app/ContextImpl.java
@@ -2739,14 +2739,15 @@
         private final File mBackupFile;
         private final int mMode;
 
-        private Map<String, Object> mMap;  // guarded by 'this'
-        private long mTimestamp;  // guarded by 'this'
+        private Map<String, Object> mMap;     // guarded by 'this'
         private int mDiskWritesInFlight = 0;  // guarded by 'this'
-        private boolean mLoaded = false;  // guarded by 'this'
+        private boolean mLoaded = false;      // guarded by 'this'
+        private long mStatTimestamp;          // guarded by 'this'
+        private long mStatSize;               // guarded by 'this'
 
         private final Object mWritingToDiskLock = new Object();
         private static final Object mContent = new Object();
-        private WeakHashMap<OnSharedPreferenceChangeListener, Object> mListeners;
+        private final WeakHashMap<OnSharedPreferenceChangeListener, Object> mListeners;
 
         SharedPreferencesImpl(
             File file, int mode, Map initialContents) {
@@ -2757,7 +2758,7 @@
             mMap = initialContents != null ? initialContents : new HashMap<String, Object>();
             FileStatus stat = new FileStatus();
             if (FileUtils.getFileStatus(file.getPath(), stat)) {
-                mTimestamp = stat.mtime;
+                mStatTimestamp = stat.mtime;
             }
             mListeners = new WeakHashMap<OnSharedPreferenceChangeListener, Object>();
         }
@@ -2784,7 +2785,7 @@
                 return true;
             }
             synchronized (this) {
-                return mTimestamp != stat.mtime;
+                return mStatTimestamp != stat.mtime || mStatSize != stat.size;
             }
         }
 
@@ -3165,7 +3166,8 @@
                 FileStatus stat = new FileStatus();
                 if (FileUtils.getFileStatus(mFile.getPath(), stat)) {
                     synchronized (this) {
-                        mTimestamp = stat.mtime;
+                        mStatTimestamp = stat.mtime;
+                        mStatSize = stat.size;
                     }
                 }
                 // Writing was successful, delete the backup file if there is one.