RFR: JDK-8028726 - (prefs) Check src/solaris/native/java/util/FileSystemPreferences.c for JNI pending exceptions
dan.xu at oracle.com
Wed Jan 8 00:50:28 UTC 2014
Thanks for your good review. I have dropped the change in
FileSystemPreferences.java , and created the new webrev which only
changes FileSystemPreferences.c. Please help review it. Thanks!
When changing FileSystemPreferences.c, I noticed the code like
"JNU_GetStringPlatformChars(env, java_fname, JNI_FALSE)". Because
JNI_FALSE is passed into this function, I am wondering why our code
still release string by calling JNU_ReleaseStringPlatformChars(env,
java_fname, fname). Thanks!
On 01/07/2014 01:36 AM, Alan Bateman wrote:
> On 06/01/2014 22:29, Dan Xu wrote:
>> Hi All,
>> Please review the simple fix for JNI pending exceptions in
>> FileSystemPreferences.c. Thanks!
>> Bug: https://bugs.openjdk.java.net/browse/JDK-8028726
>> Webrev: http://cr.openjdk.java.net/~dxu/8028726/webrev/
> The update to FIleSystemPreferences.c looks okay but if I read it
> correctly then lockFile0 can never return NULL without a pending
> exception (meaning that the change to FileSystemPreferences.java could
> mask an underlying bug if it existed).
> One passing comment is that this native methods could be completely
> eliminated here by changing FileSystemPreferences to lock the file via
> a FileChannel (use a FileLock as the lock handle). Also the chmod
> usage can be eliminated by mkdirs with Files.createDirectory and
> specify the permission files when creating the directory. I realize
> this is beyond the scope of what you are doing here (but an
> opportunity none the less).
More information about the core-libs-dev