summaryrefslogtreecommitdiff
path: root/libjava
diff options
context:
space:
mode:
authorTom Tromey <tromey@cygnus.com>2000-03-27 19:51:46 +0000
committerTom Tromey <tromey@gcc.gnu.org>2000-03-27 19:51:46 +0000
commit4e2d1dbdd309f6b7aa3af8ae146bfbc3e2517cb0 (patch)
tree2ec62fb0c3744a0db1b6ef01346dc719a82a8b49 /libjava
parent5f11c812702cfb08dca2003f4cd43a2219a08fc3 (diff)
downloadgcc-4e2d1dbdd309f6b7aa3af8ae146bfbc3e2517cb0.tar.gz
jni.cc (_Jv_JNI_PopSystemFrame): If environment has exception set, throw it.
* jni.cc (_Jv_JNI_PopSystemFrame): If environment has exception set, throw it. (call): Don't throw exception here. From-SVN: r32770
Diffstat (limited to 'libjava')
-rw-r--r--libjava/ChangeLog6
-rw-r--r--libjava/jni.cc6
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 */