aboutsummaryrefslogtreecommitdiff
path: root/libjava
diff options
context:
space:
mode:
authorMarco Trudel <mtrudel@gmx.ch>2007-02-07 23:45:11 +0100
committerTom Tromey <tromey@gcc.gnu.org>2007-02-07 22:45:11 +0000
commit304237321beb69a8b617f4118fbde440e7b8415a (patch)
treedde78be310ecc3b5e900fbc50be51aea3f79076f /libjava
parent0ccadf458df125985960ccff8a7d065ae5166908 (diff)
downloadgcc-304237321beb69a8b617f4118fbde440e7b8415a.zip
gcc-304237321beb69a8b617f4118fbde440e7b8415a.tar.gz
gcc-304237321beb69a8b617f4118fbde440e7b8415a.tar.bz2
jni.cc (_Jv_JNI_DeleteWeakGlobalRef): Check for NULL objects.
2007-02-01 Marco Trudel <mtrudel@gmx.ch> * jni.cc (_Jv_JNI_DeleteWeakGlobalRef): Check for NULL objects. From-SVN: r121699
Diffstat (limited to 'libjava')
-rw-r--r--libjava/ChangeLog4
-rw-r--r--libjava/jni.cc4
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);