diff options
-rw-r--r-- | libjava/ChangeLog | 4 | ||||
-rw-r--r-- | libjava/jni.cc | 4 |
2 files changed, 8 insertions, 0 deletions
diff --git a/libjava/ChangeLog b/libjava/ChangeLog index 06c1a1f..561f826 100644 --- a/libjava/ChangeLog +++ b/libjava/ChangeLog @@ -1,3 +1,7 @@ +2007-02-01 Marco Trudel <mtrudel@gmx.ch> + + * jni.cc (_Jv_JNI_DeleteWeakGlobalRef): Check for NULL objects. + 2007-02-07 Tom Tromey <tromey@redhat.com> * testsuite/libjava.jni/init.c: New file. diff --git a/libjava/jni.cc b/libjava/jni.cc index 07ef713..d71b16d 100644 --- a/libjava/jni.cc +++ b/libjava/jni.cc @@ -1750,6 +1750,10 @@ _Jv_JNI_NewWeakGlobalRef (JNIEnv *env, jobject obj) void JNICALL _Jv_JNI_DeleteWeakGlobalRef (JNIEnv *, jweak obj) { + // JDK compatibility. + if (obj == NULL) + return; + using namespace gnu::gcj::runtime; JNIWeakRef *ref = reinterpret_cast<JNIWeakRef *> (obj); unmark_for_gc (ref, global_ref_table); |