RFR: JDK-8028726 - (prefs) Check src/solaris/native/java/util/FileSystemPreferences.c for JNI pending exceptions
Alan Bateman
Alan.Bateman at oracle.com
Wed Jan 8 09:24:27 UTC 2014
On 08/01/2014 00:50, Dan Xu wrote:
> Hi All,
>
> 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!
>
> Webrev: http://cr.openjdk.java.net/~dxu/8028726/webrev.01/
>
> 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!
This is the isCopy parameter to allow the function return whether it has
returned a copy or not. So the JNU_ReleaseStringPlatformChars is needed.
However the JNI_FALSE isn't right, it does happens to work because
JNI_FALSE is defined as 0, same as NULL. Do you mind changing these to
NULL as part of the change so that it's a bit more obvious? (no need to
publish a new webrev if there are no other changes).
Otherwise looks fine to me.
-Alan.
More information about the core-libs-dev
mailing list