. At least on FreeBSD, O_SYNC and O_DSYNC aren't both defined

(for FreeBSD 4.x neither are defined and for FreeBSD 5.x
  O_DSYNC isn't defined).  This caused them to be defined to
  some bogus values.  In particular, O_SYNC would be defined
  as 0x800, which is O_EXCL (at least on FreeBSD 4.x).  The
  result being that the RandomAccessFile class would fail to
  open an existing file if you specified "s" as part of the mode.
  Fix this by defining O_SYNC and O_DSYNC to O_FSYNC if they
  aren't defined.
This commit is contained in:
Greg Lewis 2004-10-16 16:58:12 +00:00
parent 4c02adff59
commit 4e95ec3207
Notes: svn2git 2021-03-31 03:12:20 +00:00
svn path=/head/; revision=119604
3 changed files with 63 additions and 0 deletions

View File

@ -0,0 +1,21 @@
$FreeBSD$
--- ../../j2se/src/share/native/java/io/io_util.h.orig Wed Jul 21 08:32:49 2004
+++ ../../j2se/src/share/native/java/io/io_util.h Wed Jul 21 08:37:54 2004
@@ -10,7 +10,15 @@
extern jfieldID IO_fd_fdID;
-#if !defined(O_DSYNC) || !defined(O_SYNC)
+#ifdef _BSD_SOURCE
+#include <fcntl.h>
+#ifndef O_SYNC
+#define O_SYNC O_FSYNC
+#endif
+#ifndef O_DSYNC
+#define O_DSYNC O_FSYNC
+#endif
+#elif !defined(O_DSYNC) || !defined(O_SYNC)
#define O_SYNC (0x0800)
#define O_DSYNC (0x2000)
#endif

View File

@ -0,0 +1,21 @@
$FreeBSD$
--- ../../j2se/src/share/native/java/io/io_util.h.orig Wed Jul 21 08:32:49 2004
+++ ../../j2se/src/share/native/java/io/io_util.h Wed Jul 21 08:37:54 2004
@@ -10,7 +10,15 @@
extern jfieldID IO_fd_fdID;
-#if !defined(O_DSYNC) || !defined(O_SYNC)
+#ifdef _BSD_SOURCE
+#include <fcntl.h>
+#ifndef O_SYNC
+#define O_SYNC O_FSYNC
+#endif
+#ifndef O_DSYNC
+#define O_DSYNC O_FSYNC
+#endif
+#elif !defined(O_DSYNC) || !defined(O_SYNC)
#define O_SYNC (0x0800)
#define O_DSYNC (0x2000)
#endif

View File

@ -0,0 +1,21 @@
$FreeBSD$
--- ../../j2se/src/share/native/java/io/io_util.h.orig Wed Jul 21 08:32:49 2004
+++ ../../j2se/src/share/native/java/io/io_util.h Wed Jul 21 08:37:54 2004
@@ -10,7 +10,15 @@
extern jfieldID IO_fd_fdID;
-#if !defined(O_DSYNC) || !defined(O_SYNC)
+#ifdef _BSD_SOURCE
+#include <fcntl.h>
+#ifndef O_SYNC
+#define O_SYNC O_FSYNC
+#endif
+#ifndef O_DSYNC
+#define O_DSYNC O_FSYNC
+#endif
+#elif !defined(O_DSYNC) || !defined(O_SYNC)
#define O_SYNC (0x0800)
#define O_DSYNC (0x2000)
#endif