Looks good.
Rémi
Le 29/09/2010 14:25, Alan Bateman a écrit :
I need a reviewer for a small change to remove a debug message that
someone left when fixing a bug in the java.io implementation early in
jdk7. The debug message is printed if closing a file fails (for
example EIO because of a NFS stale handle). That change also added
code to restore the file descriptor field but this isn't needed
because the stream classes have a closed flag to ensure that they only
attempt to close the underlying file descriptor once. Furthermore, if
close fails then the state of the file descriptor is unspecified and
so cannot be used again. The proposed patch is attached.
Thanks,
Alan.
diff --git a/src/solaris/native/java/io/io_util_md.c
b/src/solaris/native/java/io/io_util_md.c
--- a/src/solaris/native/java/io/io_util_md.c
+++ b/src/solaris/native/java/io/io_util_md.c
@@ -83,8 +83,6 @@ fileClose(JNIEnv *env, jobject this, jfi
close(devnull);
}
} else if (JVM_Close(fd) == -1) {
- SET_FD(this, fd, fid); // restore fd
- printf("JVM_Close returned -1\n");
- JNU_ThrowIOExceptionWithLastError(env, "close failed");
+ JNU_ThrowIOExceptionWithLastError(env, "close failed");
}
}
diff --git a/src/windows/native/java/io/io_util_md.c
b/src/windows/native/java/io/io_util_md.c
--- a/src/windows/native/java/io/io_util_md.c
+++ b/src/windows/native/java/io/io_util_md.c
@@ -531,7 +531,6 @@ handleClose(JNIEnv *env, jobject this, j
SET_FD(this, -1, fid);
if (CloseHandle(h) == 0) { /* Returns zero on failure */
- SET_FD(this, fd, fid); // restore fd
JNU_ThrowIOExceptionWithLastError(env, "close failed");
}
return 0;