Преглед на файлове

BufferedFile: Flush content on close

Tatsuhiro Tsujikawa преди 7 години
родител
ревизия
431fcde29a
променени са 1 файла, в които са добавени 6 реда и са изтрити 0 реда
  1. 6 0
      src/BufferedFile.cc

+ 6 - 0
src/BufferedFile.cc

@@ -80,6 +80,12 @@ int BufferedFile::onClose()
 {
   int rv = 0;
   if (fp_) {
+    fflush(fp_);
+#ifndef __MINGW32__
+    fsync(fileno(fp_));
+#else  // __MINGW32__
+    _commit(fileno(fp_));
+#endif // __MINGW32__
     rv = fclose(fp_);
     fp_ = nullptr;
   }