aboutsummaryrefslogtreecommitdiff
path: root/libjava
diff options
context:
space:
mode:
authorBryce McKinlay <bryce@waitaki.otago.ac.nz>2001-09-30 02:41:54 +0000
committerBryce McKinlay <bryce@gcc.gnu.org>2001-09-30 03:41:54 +0100
commit84447668476328fe8ee7506fad2f02bb2d0f4c03 (patch)
treeb2bfcad46ab64f8dbcbfaf4ac8368d05a5df53b6 /libjava
parented9fca3f20677f1cfafc1b9d00706e4167f81bd1 (diff)
downloadgcc-84447668476328fe8ee7506fad2f02bb2d0f4c03.zip
gcc-84447668476328fe8ee7506fad2f02bb2d0f4c03.tar.gz
gcc-84447668476328fe8ee7506fad2f02bb2d0f4c03.tar.bz2
natClass.cc (_Jv_IsAssignableFrom): Handle the case of an uninitialized target class.
* java/lang/natClass.cc (_Jv_IsAssignableFrom): Handle the case of an uninitialized target class. From-SVN: r45893
Diffstat (limited to 'libjava')
-rw-r--r--libjava/ChangeLog5
-rw-r--r--libjava/java/lang/natClass.cc5
2 files changed, 8 insertions, 2 deletions
diff --git a/libjava/ChangeLog b/libjava/ChangeLog
index 9c32b0c..a76e941 100644
--- a/libjava/ChangeLog
+++ b/libjava/ChangeLog
@@ -1,3 +1,8 @@
+2001-09-30 Bryce McKinlay <bryce@waitaki.otago.ac.nz>
+
+ * java/lang/natClass.cc (_Jv_IsAssignableFrom): Handle the case of
+ an uninitialized target class.
+
2001-09-28 Per Bothner <per@bothner.com>
* gnu/gcj/runtime/SharedLibLoader.java: New class.
diff --git a/libjava/java/lang/natClass.cc b/libjava/java/lang/natClass.cc
index d6fb3ab..7b6b8b5 100644
--- a/libjava/java/lang/natClass.cc
+++ b/libjava/java/lang/natClass.cc
@@ -956,8 +956,9 @@ _Jv_IsAssignableFrom (jclass target, jclass source)
return false;
return true;
}
- else if (source->ancestors != NULL
- && source->depth >= target->depth
+ else if (source->ancestors != NULL
+ && target->ancestors != NULL
+ && source->depth >= target->depth
&& source->ancestors[source->depth - target->depth] == target)
return true;