Changeset: 6ab87e803ab0 for MonetDB
URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=6ab87e803ab0
Modified Files:
        gdk/gdk_logger.c
Branch: Jan2014
Log Message:

Make sure file 32->64 bit conversion file exists before we start converting.


diffs (25 lines):

diff --git a/gdk/gdk_logger.c b/gdk/gdk_logger.c
--- a/gdk/gdk_logger.c
+++ b/gdk/gdk_logger.c
@@ -1426,9 +1426,18 @@ logger_new(int debug, char *fn, char *lo
                                fclose(fp1);
                                /* first create a versioned file using
                                 * the current log id */
-                               fp1 = fopen(cvfile, "w");
-                               fprintf(fp1, "%d\n", curid);
-                               fclose(fp1);
+                               if ((fp1 = fopen(cvfile, "w")) == NULL ||
+                                   fprintf(fp1, "%d\n", curid) < 2 ||
+                                   fflush(fp1) != 0 || /* make sure it's save 
on disk */
+#if defined(_MSC_VER)
+                                   _commit(_fileno(fp1)) < 0 ||
+#elif defined(HAVE_FDATASYNC)
+                                   fdatasync(fileno(fp1)) < 0 ||
+#elif defined(HAVE_FSYNC)
+                                   fsync(fileno(fp1)) < 0 ||
+#endif
+                                   fclose(fp1) != 0)
+                                       logger_fatal("Logger_new: failed to 
write %s\n", cvfile, 0, 0);
                                /* then remove the unversioned file
                                 * that gdk_bbp created (in this
                                 * order!) */
_______________________________________________
checkin-list mailing list
[email protected]
https://www.monetdb.org/mailman/listinfo/checkin-list

Reply via email to