Fix pg_basebackup output to stdout on Windows.
Heikki Linnakangas <heikki.linnakangas@iki.fi>
Fix pg_basebackup output to stdout on Windows. When writing a backup to stdout with pg_basebackup on Windows, put stdout to binary mode. Any CR bytes in the output will otherwise be output incorrectly as CR+LF. In the passing, standardize on using "_setmode" instead of "setmode", for the sake of consistency. They both do the same thing, but according to MSDN documentation, setmode is deprecated. Fixes bug #14634, reported by Henry Boehlert. Patch by Haribabu Kommi. Backpatch to all supported versions. Discussion: https://www.postgresql.org/message-id/20170428082818.24366.13134@wrigleys.postgresql.org
Files
| Path | Change | +/− |
|---|---|---|
| src/bin/pg_basebackup/pg_basebackup.c | modified | +4 −0 |
| src/bin/pg_dump/pg_backup_archiver.c | modified | +2 −2 |
Discussion
- BUG #14634: On Windows pg_basebackup should write tar to stdout in binary mode 9 messages · 2017-04-28 → 2017-07-14