Most of the changes here are simply
JNF_COCOA_ENTER -> JNI_COCOA_ENTER
JNF_COCOA_EXIT -> JNI_COCOA_EXIT

These new macros are defined in JNIUtilities.h and handle the auto release and 
on exit catch any NSException.
Unlike the JNF code, JNI exceptions don't have to be extracted from the 
NSException.

So calls to JNFException are also removed and in most cases they are just 
directly using one of the JNU_*
defined exceptions since we are in a native nethod and can return control 
directly to Java.

JNIUtilities has just two macros for cases where we need to accompany it with 
an NSException because
we aren't in the immediate body of a JNI method.

JNIUtilities also has a macro JNI_COCOA_EXIT_WITH_ACTION
This is used by a macro in QuartzSurfaceData.m to re-implement a pre-existing 
macro
JNF_COCOA_RENDERER_EXIT as JNI_COCOA_RENDERER_EXIT.
This is used in a few places to ensure that we call FinishSurface on the Quartz 
surface.

This already passed all our automated tests, although I'm re-running since I 
needed to merge to the
current repo state.

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

Commit messages:
 - 8259651: [macOS] Replace JNF_COCOA_ENTER/EXIT macros
 - 8259651: [macOS] Replace JNF_COCOA_ENTER/EXIT macros

Changes: https://git.openjdk.java.net/jdk/pull/2056/files
 Webrev: https://webrevs.openjdk.java.net/?repo=jdk&pr=2056&range=00
  Issue: https://bugs.openjdk.java.net/browse/JDK-8259651
  Stats: 602 lines in 48 files changed: 58 ins; 17 del; 527 mod
  Patch: https://git.openjdk.java.net/jdk/pull/2056.diff
  Fetch: git fetch https://git.openjdk.java.net/jdk pull/2056/head:pull/2056

PR: https://git.openjdk.java.net/jdk/pull/2056

Reply via email to