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