diff options
author | tromey <tromey@138bc75d-0d04-0410-961f-82ee72b054a4> | 2000-03-27 19:51:46 +0000 |
---|---|---|
committer | tromey <tromey@138bc75d-0d04-0410-961f-82ee72b054a4> | 2000-03-27 19:51:46 +0000 |
commit | 2e3a610c4a261ae5252d7947f74c70951300fd7a (patch) | |
tree | 2ec62fb0c3744a0db1b6ef01346dc719a82a8b49 | |
parent | 3d83fc70e764488f7a15f105f55b233073f54398 (diff) | |
download | gcc-2e3a610c4a261ae5252d7947f74c70951300fd7a.tar.gz |
* jni.cc (_Jv_JNI_PopSystemFrame): If environment has exception
set, throw it.
(call): Don't throw exception here.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@32770 138bc75d-0d04-0410-961f-82ee72b054a4
-rw-r--r-- | libjava/ChangeLog | 6 | ||||
-rw-r--r-- | libjava/jni.cc | 6 |
2 files changed, 9 insertions, 3 deletions
diff --git a/libjava/ChangeLog b/libjava/ChangeLog index 3f42bfba17a..dd2a68dade7 100644 --- a/libjava/ChangeLog +++ b/libjava/ChangeLog @@ -1,5 +1,11 @@ 2000-03-26 Tom Tromey <tromey@cygnus.com> + * jni.cc (_Jv_JNI_PopSystemFrame): If environment has exception + set, throw it. + (call): Don't throw exception here. + +2000-03-26 Tom Tromey <tromey@cygnus.com> + * java/lang/mprec.h: Use SIZEOF_VOID_P. * interpret.cc: Use SIZEOF_VOID_P. * include/java-cpool.h (_Jv_storeLong): Use SIZEOF_VOID_P. diff --git a/libjava/jni.cc b/libjava/jni.cc index 6cf489f3d9a..da9a84860ee 100644 --- a/libjava/jni.cc +++ b/libjava/jni.cc @@ -298,6 +298,9 @@ extern "C" void _Jv_JNI_PopSystemFrame (JNIEnv *env) { _Jv_JNI_PopLocalFrame (env, NULL, MARK_SYSTEM); + + if (env->ex) + throw env->ex; } // This function is used from other template functions. It wraps the @@ -1723,9 +1726,6 @@ _Jv_JNIMethod::call (ffi_cif *, void *ret, ffi_raw *args, void *__this) ret, real_args); _Jv_JNI_PopSystemFrame (env); - - if (env->ex) - JvThrow (env->ex); } #endif /* INTERPRETER */ |