aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAdam King <aking@dreammechanics.com>2002-04-29 03:54:50 +0000
committerBryce McKinlay <bryce@gcc.gnu.org>2002-04-29 04:54:50 +0100
commitf81c23cdf52503d028f86a358e5704fe1f903051 (patch)
tree05ed2612fd21e6357ecd4d4e8041d21a93fe1f87
parent60284a5928b20fe9380a361c3d61aa9c890ae7b0 (diff)
downloadgcc-f81c23cdf52503d028f86a358e5704fe1f903051.zip
gcc-f81c23cdf52503d028f86a358e5704fe1f903051.tar.gz
gcc-f81c23cdf52503d028f86a358e5704fe1f903051.tar.bz2
natFileDescriptorWin32.cc (open): Move file pointer to end of file in APPEND mode.
2002-04-29 Adam King <aking@dreammechanics.com> * java/io/natFileDescriptorWin32.cc (open): Move file pointer to end of file in APPEND mode. From-SVN: r52869
-rw-r--r--libjava/ChangeLog5
-rw-r--r--libjava/java/io/natFileDescriptorWin32.cc7
2 files changed, 12 insertions, 0 deletions
diff --git a/libjava/ChangeLog b/libjava/ChangeLog
index 2cbcf4e..b229277 100644
--- a/libjava/ChangeLog
+++ b/libjava/ChangeLog
@@ -1,3 +1,8 @@
+2002-04-29 Adam King <aking@dreammechanics.com>
+
+ * java/io/natFileDescriptorWin32.cc (open): Move file pointer to end
+ of file in APPEND mode.
+
2002-04-25 David S. Miller <davem@redhat.com>
PR target/6422
diff --git a/libjava/java/io/natFileDescriptorWin32.cc b/libjava/java/io/natFileDescriptorWin32.cc
index 694272a..bc9cbc8 100644
--- a/libjava/java/io/natFileDescriptorWin32.cc
+++ b/libjava/java/io/natFileDescriptorWin32.cc
@@ -124,6 +124,13 @@ java::io::FileDescriptor::open (jstring path, jint jflags) {
throw new FileNotFoundException (JvNewStringLatin1 (msg));
}
+ // For APPEND mode, move the file pointer to the end of the file.
+ if (jflags & APPEND)
+ {
+ DWORD low = SetFilePointer (handle, 0, NULL, FILE_END);
+ if ((low == 0xffffffff) && (GetLastError () != NO_ERROR))
+ throw new FileNotFoundException (JvNewStringLatin1 (winerr ()));
+ }
return (jint)handle;
}