summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--libjava/ChangeLog5
-rw-r--r--libjava/verify.cc4
2 files changed, 8 insertions, 1 deletions
diff --git a/libjava/ChangeLog b/libjava/ChangeLog
index 210c09af094..cb48b1bf8ff 100644
--- a/libjava/ChangeLog
+++ b/libjava/ChangeLog
@@ -1,3 +1,8 @@
+2002-01-24 Per Bothner <per@bothner.com>
+
+ * verify.cc (is_assignable_from_slow): If source is an interface,
+ we must also check the the superclass.
+
2002-01-24 Tom Tromey <tromey@redhat.com>
* gnu/awt/xlib/XToolkit.java (getPrintJob): New stub method.
diff --git a/libjava/verify.cc b/libjava/verify.cc
index 8627de571c3..3b033c748d9 100644
--- a/libjava/verify.cc
+++ b/libjava/verify.cc
@@ -261,7 +261,9 @@ private:
if (is_assignable_from_slow (target, source->interfaces[i]))
return true;
}
- return false;
+ source = source->getSuperclass ();
+ if (source == NULL)
+ return false;
}
else if (target == &java::lang::Object::class$)
return true;
OpenPOWER on IntegriCloud