From 0390c16ac809c20a3fcae814090e2a55b01b00d2 Mon Sep 17 00:00:00 2001 From: Petr Pchelko Date: Tue, 25 Feb 2014 11:51:25 +0400 Subject: [PATCH] 8035640: JNU_CHECK_EXCEPTION should support c++ JNI syntax Reviewed-by: anthony, alanb --- jdk/src/share/native/common/jni_util.h | 17 ++++++++++++++++- 1 file changed, 16 insertions(+), 1 deletion(-) diff --git a/jdk/src/share/native/common/jni_util.h b/jdk/src/share/native/common/jni_util.h index 770934bdd5e..b66ea62fe5b 100644 --- a/jdk/src/share/native/common/jni_util.h +++ b/jdk/src/share/native/common/jni_util.h @@ -297,6 +297,21 @@ JNU_NotifyAll(JNIEnv *env, jobject object); } \ } while (0) \ +#ifdef __cplusplus +#define JNU_CHECK_EXCEPTION(env) \ + do { \ + if ((env)->ExceptionCheck()) { \ + return; \ + } \ + } while (0) \ + +#define JNU_CHECK_EXCEPTION_RETURN(env, y) \ + do { \ + if ((env)->ExceptionCheck()) { \ + return (y); \ + } \ + } while (0) +#else #define JNU_CHECK_EXCEPTION(env) \ do { \ if ((*env)->ExceptionCheck(env)) { \ @@ -310,7 +325,7 @@ JNU_NotifyAll(JNIEnv *env, jobject object); return (y); \ } \ } while (0) - +#endif /* __cplusplus */ /************************************************************************ * Debugging utilities */