char filename[MAXPGPATH];
bool suppressed_username = false;
+
+ /*
+ * Open all files in binary mode to avoid line end translation on Windows,
+ * both for input and output.
+ */
+
snprintf(filename, sizeof(filename), "%s", ALL_DUMP_FILE);
- if ((all_dump = fopen(filename, "r")) == NULL)
+ if ((all_dump = fopen(filename, PG_BINARY_R)) == NULL)
pg_log(PG_FATAL, "Could not open dump file \"%s\": %s\n", filename, getErrorText(errno));
snprintf(filename, sizeof(filename), "%s", GLOBALS_DUMP_FILE);
- if ((globals_dump = fopen_priv(filename, "w")) == NULL)
+ if ((globals_dump = fopen_priv(filename, PG_BINARY_W)) == NULL)
pg_log(PG_FATAL, "Could not write to dump file \"%s\": %s\n", filename, getErrorText(errno));
snprintf(filename, sizeof(filename), "%s", DB_DUMP_FILE);
- if ((db_dump = fopen_priv(filename, "w")) == NULL)
+ if ((db_dump = fopen_priv(filename, PG_BINARY_W)) == NULL)
pg_log(PG_FATAL, "Could not write to dump file \"%s\": %s\n", filename, getErrorText(errno));
current_output = globals_dump;