On Tue, 15 Oct 2024 16:54:14 GMT, Kevin Rushforth <k...@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
>
> modules/javafx.graphics/src/main/native-prism/SwingInterop.c line 31:
> 
>> 29:  * Class com_sun_javafx_application_PlatformImpl
>> 30:  * Method: overrideNativeWindowHandle
>> 31:  * Signature 
>> (Ljava/lang/Class;JLjava/lang/Runnable)Ljdk.swing.interop.LightweightFrameWrapper;
> 
> The signature should be changed to match the actual method. You can copy / 
> paste from the generated header file.
> 
> Also, I recommend including the generated header file in this file (after the 
> include of `jni.h`)

was the header file omitted?  It did compile, could I have missed a warning?

-------------

PR Review Comment: https://git.openjdk.org/jfx/pull/1600#discussion_r1801597021

Reply via email to