diff src/share/vm/prims/unsafe.cpp @ 17704:56cd09c4a5c9

8028785: [parfait] warnings from b116 for hotspot.src.share.vm.prims: JNI exception pending Summary: added JNI exception pending check in several files under src/share/vm/prims directory Reviewed-by: coleenp, minqi
author ccheung
date Wed, 12 Feb 2014 12:01:45 -0800
parents 190899198332
children e6195383bcaf 62c54fcc0a35
line wrap: on
line diff
--- a/src/share/vm/prims/unsafe.cpp	Fri Feb 28 09:10:55 2014 -0800
+++ b/src/share/vm/prims/unsafe.cpp	Wed Feb 12 12:01:45 2014 -0800
@@ -858,6 +858,11 @@
   strcpy(buf, "java/lang/");
   strcat(buf, ename);
   jclass cls = env->FindClass(buf);
+  if (env->ExceptionCheck()) {
+    env->ExceptionClear();
+    tty->print_cr("Unsafe: cannot throw %s because FindClass has failed", buf);
+    return;
+  }
   char* msg = NULL;
   env->ThrowNew(cls, msg);
 }