--- a/jdk/src/java.base/unix/native/libjava/io_util_md.c Mon Oct 27 16:24:43 2014 -0700
+++ b/jdk/src/java.base/unix/native/libjava/io_util_md.c Tue Oct 28 15:36:27 2014 +0300
@@ -107,7 +107,15 @@
#endif
fd = handleOpen(ps, flags, 0666);
if (fd != -1) {
+ jobject fdobj;
+ jboolean append;
SET_FD(this, fd, fid);
+
+ fdobj = (*env)->GetObjectField(env, this, fid);
+ if (fdobj != NULL) {
+ append = (flags & O_APPEND) == 0 ? JNI_FALSE : JNI_TRUE;
+ (*env)->SetBooleanField(env, fdobj, IO_append_fdID, append);
+ }
} else {
throwFileNotFoundException(env, path);
}