src/share/vm/prims/unsafe.cpp
Index
Unified diffs
Context diffs
Sdiffs
Wdiffs
Patch
New
Old
Previous File
Next File
*** old/src/share/vm/prims/unsafe.cpp Thu Feb 6 15:16:09 2014
--- new/src/share/vm/prims/unsafe.cpp Thu Feb 6 15:16:09 2014
*** 856,865 ****
--- 856,870 ----
static inline void throw_new(JNIEnv *env, const char *ename) {
char buf[100];
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);
}
static jclass Unsafe_DefineClass_impl(JNIEnv *env, jstring name, jbyteArray data, int offset, int length, jobject loader, jobject pd) {
src/share/vm/prims/unsafe.cpp
Index
Unified diffs
Context diffs
Sdiffs
Wdiffs
Patch
New
Old
Previous File
Next File