8303577: [JVMCI] OOME causes crash while translating exceptions

Reviewed-by: kvn, never
This commit is contained in:
Doug Simon 2023-03-06 16:10:02 +00:00
parent 877ab659b9
commit cac81ddc92
5 changed files with 31 additions and 9 deletions

View file

@ -392,7 +392,7 @@ class HotSpotToSharedLibraryExceptionTranslation : public ExceptionTranslation {
JNIAccessMark jni(_to_env, THREAD);
jni()->CallStaticVoidMethod(JNIJVMCI::VMSupport::clazz(),
JNIJVMCI::VMSupport::decodeAndThrowThrowable_method(),
buffer);
buffer, false);
}
public:
HotSpotToSharedLibraryExceptionTranslation(JVMCIEnv* hotspot_env, JVMCIEnv* jni_env, const Handle& throwable) :
@ -414,11 +414,12 @@ class SharedLibraryToHotSpotExceptionTranslation : public ExceptionTranslation {
void decode(JavaThread* THREAD, Klass* vmSupport, jlong buffer) {
JavaCallArguments jargs;
jargs.push_long(buffer);
jargs.push_int(true);
JavaValue result(T_VOID);
JavaCalls::call_static(&result,
vmSupport,
vmSymbols::decodeAndThrowThrowable_name(),
vmSymbols::long_void_signature(), &jargs, THREAD);
vmSymbols::decodeAndThrowThrowable_signature(), &jargs, THREAD);
}
public:
SharedLibraryToHotSpotExceptionTranslation(JVMCIEnv* hotspot_env, JVMCIEnv* jni_env, jthrowable throwable) :