On Tue, 3 Jun 2025 14:05:24 GMT, Alexander Zvegintsev <azveg...@openjdk.org> wrote:
>> But then it should show JNI exception pending for all places where we call >> AWT_UNLOCK, why only this place? > > This is not the only place. Other cases are also covered by checking for > pending exceptions or by returning to Java. If not, the code analysis tool > may not detect it for some reason. We call AWT_UNLOCK in awt_Robot.c, gtk3_interface.c, awt_GraphicsEnv.c where there's no ExceptionCheck after the call. For example, here ExceptionCheck is called not after AWT_UNLOCK but after the next JNI call `(*env)->NewObject` https://github.com/openjdk/jdk/blob/ebd85288ce309b7dc7ff8b36558dd9f2a2300209/src/java.desktop/unix/native/libawt_xawt/awt/awt_GraphicsEnv.c#L1281-L1290 Normally we do ExceptionCheck after GetStringUTFChars https://github.com/openjdk/jdk/blob/ebd85288ce309b7dc7ff8b36558dd9f2a2300209/src/java.desktop/windows/native/libawt/windows/ShellFolder2.cpp#L1192-L1193 Did you verify the warning goes off only by this PR change? If not, I will also recommend doing CHECK_EXCEPTION after GetStringUTFChars too.. ------------- PR Review Comment: https://git.openjdk.org/jdk/pull/25605#discussion_r2125538565