From 97a4d32ec6b8e1ea688b2ccd8ba54b8597227c79 Mon Sep 17 00:00:00 2001 From: Bryce McKinlay Date: Wed, 14 Feb 2001 05:32:31 +0000 Subject: natClass.cc (getSignature): Don't try to dereference param_types if it is null. * java/lang/natClass.cc (getSignature): Don't try to dereference param_types if it is null. Instead, take this to mean "no parameters". * java/lang/TreeMap.java (TreeIterator.next): Throw NoSuchElementException in preference to ConcurrentModificationException. (TreeIterator.remove): Throw IllegalStateException in preference to ConcurrentModificationException. (SubMap.firstKey): Do a better check for empty SubMap, and if it is, throw a NoSuchElementException. (SubMap.lastKey): Likewise. From-SVN: r39658 --- libjava/java/lang/natClass.cc | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) (limited to 'libjava/java/lang/natClass.cc') diff --git a/libjava/java/lang/natClass.cc b/libjava/java/lang/natClass.cc index 6678b77..a1008d6 100644 --- a/libjava/java/lang/natClass.cc +++ b/libjava/java/lang/natClass.cc @@ -290,8 +290,12 @@ java::lang::Class::getSignature (JArray *param_types, java::lang::StringBuffer *buf = new java::lang::StringBuffer (); buf->append((jchar) '('); jclass *v = elements (param_types); - for (int i = 0; i < param_types->length; ++i) - v[i]->getSignature(buf); + // A NULL param_types means "no parameters". + if (param_types != NULL) + { + for (int i = 0; i < param_types->length; ++i) + v[i]->getSignature(buf); + } buf->append((jchar) ')'); if (is_constructor) buf->append((jchar) 'V'); -- cgit v1.1