From 03c4c92770cd3a237b83b37ed7b6515700c1fbfc Mon Sep 17 00:00:00 2001
From: Chris Angelico <rosuav@gmail.com>
Date: Wed, 5 Feb 2014 21:36:49 +1100
Subject: [PATCH] Open all files in binary mode, on platforms where this is
 meaningful

---
 src/fdlib.h  | 4 ++--
 src/object.c | 2 +-
 2 files changed, 3 insertions(+), 3 deletions(-)

diff --git a/src/fdlib.h b/src/fdlib.h
index 1fe5ea8f5f..c44ad39f73 100644
--- a/src/fdlib.h
+++ b/src/fdlib.h
@@ -86,7 +86,7 @@ typedef off_t PIKE_OFF_T;
         debug_fd_query_properties(dmalloc_touch_fd(fd),(Y))
 #define fd_stat(F,BUF) debug_fd_stat(F,BUF)
 #define fd_lstat(F,BUF) debug_fd_stat(F,BUF)
-#define fd_open(X,Y,Z) dmalloc_register_fd(debug_fd_open((X),(Y),(Z)))
+#define fd_open(X,Y,Z) dmalloc_register_fd(debug_fd_open((X),(Y)|fd_BINARY,(Z)))
 #define fd_socket(X,Y,Z) dmalloc_register_fd(debug_fd_socket((X),(Y),(Z)))
 #define fd_pipe(X) debug_fd_pipe( (X) DMALLOC_POS )
 #define fd_accept(X,Y,Z) dmalloc_register_fd(debug_fd_accept((X),(Y),(Z)))
@@ -336,7 +336,7 @@ typedef off_t PIKE_OFF_T;
 
 #define fd_stat(F,BUF) stat(F,BUF)
 #define fd_lstat(F,BUF) lstat(F,BUF)
-#define fd_open(X,Y,Z) dmalloc_register_fd(open((X),(Y),(Z)))
+#define fd_open(X,Y,Z) dmalloc_register_fd(open((X),(Y)|fd_BINARY,(Z)))
 #define fd_socket(X,Y,Z) dmalloc_register_fd(socket((X),(Y),(Z)))
 #define fd_pipe pipe /* FIXME */
 #define fd_accept(X,Y,Z) dmalloc_register_fd(accept((X),(Y),(Z)))
diff --git a/src/object.c b/src/object.c
index 3e79e23d38..117c76ace7 100644
--- a/src/object.c
+++ b/src/object.c
@@ -463,7 +463,7 @@ struct pike_string *low_read_file(const char *file)
   PIKE_OFF_T len;
   FD f;
 
-  while((f = fd_open(file,fd_RDONLY|fd_BINARY,0666)) <0 && errno==EINTR)
+  while((f = fd_open(file,fd_RDONLY,0666)) <0 && errno==EINTR)
     check_threads_etc();
   if(f >= 0)
   {
-- 
GitLab