diff options
Diffstat (limited to 'libqpdf')
-rw-r--r-- | libqpdf/QPDFWriter.cc | 1 | ||||
-rw-r--r-- | libqpdf/QUtil.cc | 10 |
2 files changed, 11 insertions, 0 deletions
diff --git a/libqpdf/QPDFWriter.cc b/libqpdf/QPDFWriter.cc index eb146bd2..b4b4b6d2 100644 --- a/libqpdf/QPDFWriter.cc +++ b/libqpdf/QPDFWriter.cc @@ -50,6 +50,7 @@ QPDFWriter::QPDFWriter(QPDF& pdf, char const* filename) : this->filename = "standard output"; QTC::TC("qpdf", "QPDFWriter write to stdout"); file = stdout; + QUtil::binary_stdout(); } else { diff --git a/libqpdf/QUtil.cc b/libqpdf/QUtil.cc index 3ac467d4..c3df35da 100644 --- a/libqpdf/QUtil.cc +++ b/libqpdf/QUtil.cc @@ -5,9 +5,11 @@ #include <ctype.h> #include <stdlib.h> #include <string.h> +#include <fcntl.h> #ifdef _WIN32 #include <Windows.h> #include <direct.h> +#include <io.h> #else #include <unistd.h> #endif @@ -104,6 +106,14 @@ QUtil::copy_string(std::string const& str) return result; } +void +QUtil::binary_stdout() +{ +#ifdef _WIN32 + _setmode(_fileno(stdout), _O_BINARY); +#endif +} + bool QUtil::get_env(std::string const& var, std::string* value) { |