diff options
Diffstat (limited to 'libjava/java/io/natFileDescriptorPosix.cc')
| -rw-r--r-- | libjava/java/io/natFileDescriptorPosix.cc | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/libjava/java/io/natFileDescriptorPosix.cc b/libjava/java/io/natFileDescriptorPosix.cc index ad1dcc49c32..2ad2d9dce77 100644 --- a/libjava/java/io/natFileDescriptorPosix.cc +++ b/libjava/java/io/natFileDescriptorPosix.cc @@ -105,6 +105,12 @@ java::io::FileDescriptor::open (jstring path, jint jflags) } } + if ((jflags & SYNC)) + flags |= O_SYNC; + + if ((jflags & DSYNC)) + flags |= O_DSYNC; + int fd = ::open (buf, flags, mode); if (fd == -1 && errno == EMFILE) { @@ -233,7 +239,7 @@ java::io::FileDescriptor::seek (jlong pos, jint whence, jboolean eof_trunc) if (eof_trunc) { - jlong len = length (); + jlong len = getLength (); if (whence == SET) { if (pos > len) @@ -258,7 +264,7 @@ java::io::FileDescriptor::seek (jlong pos, jint whence, jboolean eof_trunc) } jlong -java::io::FileDescriptor::length (void) +java::io::FileDescriptor::getLength (void) { struct stat sb; if (::fstat (fd, &sb)) |
