[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PATCH] binary-io: fix O_TEXT on Haiku
From: |
Eric Blake |
Subject: |
[PATCH] binary-io: fix O_TEXT on Haiku |
Date: |
Wed, 19 Jan 2011 06:19:53 -0700 |
* modules/binary-io (Depends-on): Add fcntl-h.
* lib/binary-io.h (O_TEXT): Rely on replacement <fcntl.h> rather
than blindly undefining O_TEXT.
Reported by Scott McCreary.
Signed-off-by: Eric Blake <address@hidden>
---
Even though <fcntl.h> sanitized Haiku's worthless O_TEXT,
"binary-io.h" was then nuking the sanitized version and
failing to replace it, leading to compilation errors due to
undefined O_TEXT on just Haiku.
ChangeLog | 8 ++++++++
lib/binary-io.h | 15 +--------------
modules/binary-io | 1 +
3 files changed, 10 insertions(+), 14 deletions(-)
diff --git a/ChangeLog b/ChangeLog
index 54c4598..6cf52b7 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,11 @@
+2011-01-19 Eric Blake <address@hidden>
+
+ binary-io: fix O_TEXT on Haiku
+ * modules/binary-io (Depends-on): Add fcntl-h.
+ * lib/binary-io.h (O_TEXT): Rely on replacement <fcntl.h> rather
+ than blindly undefining O_TEXT.
+ Reported by Scott McCreary.
+
2011-01-18 Paul Eggert <address@hidden>
include_next: do not check for standard headers like stddef.h
diff --git a/lib/binary-io.h b/lib/binary-io.h
index 2fdc642..c09dbf5 100644
--- a/lib/binary-io.h
+++ b/lib/binary-io.h
@@ -18,24 +18,13 @@
#define _BINARY_H
/* For systems that distinguish between text and binary I/O.
- O_BINARY is usually declared in <fcntl.h>. */
+ O_BINARY is guaranteed by the gnulib <fcntl.h>. */
#include <fcntl.h>
/* The MSVC7 <stdio.h> doesn't like to be included after '#define fileno ...',
so we include it here first. */
#include <stdio.h>
-#if !defined O_BINARY && defined _O_BINARY
- /* For MSC-compatible compilers. */
-# define O_BINARY _O_BINARY
-# define O_TEXT _O_TEXT
-#endif
-#if defined __BEOS__ || defined __HAIKU__
- /* BeOS 5 and Haiku have O_BINARY and O_TEXT, but they have no effect. */
-# undef O_BINARY
-# undef O_TEXT
-#endif
-
/* SET_BINARY (fd);
changes the file descriptor fd to perform binary I/O. */
#if O_BINARY
@@ -57,8 +46,6 @@
# endif
#else
/* On reasonable systems, binary I/O is the default. */
-# undef O_BINARY
-# define O_BINARY 0
# define SET_BINARY(fd) /* do nothing */ ((void) 0)
#endif
diff --git a/modules/binary-io b/modules/binary-io
index e97feb9..eb41ec0 100644
--- a/modules/binary-io
+++ b/modules/binary-io
@@ -5,6 +5,7 @@ Files:
lib/binary-io.h
Depends-on:
+fcntl-h
configure.ac:
--
1.7.3.4
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [PATCH] binary-io: fix O_TEXT on Haiku,
Eric Blake <=