RFR: 8340005: Eliminate native access calls from javafx.swing
Andy Goryachev
angorya at openjdk.org
Tue Oct 15 15:35:17 UTC 2024
On Tue, 15 Oct 2024 03:18:09 GMT, Prasanta Sadhukhan <psadhukhan at openjdk.org> wrote:
> While implementing [JDK-8339517](https://bugs.openjdk.org/browse/JDK-8339517) to eliminate native access warnings by passing "--enable-native-access" for the three JavaFX modules with native code (javafx.graphics, javafx.media, and javafx.web), it was found that the Swing interop code in javafx.swing calls a JNI method defined in one of the native graphics libraries (prism-common) directly
>
> This means that even after [JDK-8339517](https://bugs.openjdk.org/browse/JDK-8339517) is fixed, we still get native access warnings when running any test that uses SwingNode.
>
> This fixes the native access warning by making javafx.graphics module call the native JNI and Swing-interop calls the static utility method in javafx.graphics, in this case defined in PlatformImpl
>
> All test.javafx.embed.swing SwingNode tests are running ok without any native warning
looks good on macOS (did not test on win/linux)
launching Tools -> JTextArea ... window from the monkey tester, the warning is silenced once `--enable-native-access=javafx.graphics` is added to the command line
left a minor comment
modules/javafx.swing/src/main/java/com/sun/javafx/embed/swing/newimpl/SwingNodeInteropN.java line 130:
> 128: }
> 129:
> 130:
minor: extra newline?
-------------
Marked as reviewed by angorya (Reviewer).
PR Review: https://git.openjdk.org/jfx/pull/1600#pullrequestreview-2369789780
PR Review Comment: https://git.openjdk.org/jfx/pull/1600#discussion_r1801440624
More information about the openjfx-dev
mailing list