Work on issue #3101415: Crespo apps seem to have their UID changed over time.

fsync!

Change-Id: Ie6c5397202579935ac69bf61d3e7b3081ecf269c
diff --git a/services/java/com/android/server/DropBoxManagerService.java b/services/java/com/android/server/DropBoxManagerService.java
index 9829f9a..0e45145 100644
--- a/services/java/com/android/server/DropBoxManagerService.java
+++ b/services/java/com/android/server/DropBoxManagerService.java
@@ -26,6 +26,7 @@
 import android.net.Uri;
 import android.os.Debug;
 import android.os.DropBoxManager;
+import android.os.FileUtils;
 import android.os.Handler;
 import android.os.ParcelFileDescriptor;
 import android.os.StatFs;
@@ -183,7 +184,8 @@
             int bufferSize = mBlockSize;
             if (bufferSize > 4096) bufferSize = 4096;
             if (bufferSize < 512) bufferSize = 512;
-            output = new BufferedOutputStream(new FileOutputStream(temp), bufferSize);
+            FileOutputStream foutput = new FileOutputStream(temp);
+            output = new BufferedOutputStream(foutput, bufferSize);
             if (read == buffer.length && ((flags & DropBoxManager.IS_GZIPPED) == 0)) {
                 output = new GZIPOutputStream(output);
                 flags = flags | DropBoxManager.IS_GZIPPED;
@@ -200,6 +202,7 @@
 
                 read = input.read(buffer);
                 if (read <= 0) {
+                    FileUtils.sync(foutput);
                     output.close();  // Get a final size measurement
                     output = null;
                 } else {