aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLasse Collin <lasse.collin@tukaani.org>2008-01-18 14:17:37 +0200
committerLasse Collin <lasse.collin@tukaani.org>2008-01-18 14:17:37 +0200
commit61d1784d8f1761d979a6da6e223e279ca33815e6 (patch)
treeea93c44e27ef1aac4e1f44d908e8e93ef9c2db59
parentAdded test_compress.sh and bunch of files needed by it. (diff)
downloadxz-61d1784d8f1761d979a6da6e223e279ca33815e6.tar.xz
Set stdin and stdout to binary mode on Windows. This patch is
a forward port of b7b22fcb979a16d3a47c8001f058c9f7d4416068 from lzma-utils-legacy.git. I don't know if the new code base builds on Windows, but this is a start.
-rw-r--r--src/lzmadec/lzmadec.c9
1 files changed, 9 insertions, 0 deletions
diff --git a/src/lzmadec/lzmadec.c b/src/lzmadec/lzmadec.c
index 10d5cc60..eca58b98 100644
--- a/src/lzmadec/lzmadec.c
+++ b/src/lzmadec/lzmadec.c
@@ -28,6 +28,10 @@ extern int errno;
#include <stdio.h>
#include <unistd.h>
+#ifdef WIN32
+# include <fcntl.h>
+#endif
+
#include "getopt.h"
#include "physmem.h"
@@ -489,6 +493,11 @@ main(int argc, char **argv)
allocator.opaque = mem_limitter;
strm.allocator = &allocator;
+#ifdef WIN32
+ setmode(fileno(stdin), O_BINARY);
+ setmode(fileno(stdout), O_BINARY);
+#endif
+
if (optind == argc) {
file = stdin;
filename = "(stdin)";