re GNATS gcj/260 ("Klass.class" expression should cause Klass to be initialized)

* java/lang/natClass.cc (forName): Removed dead code.  Initialize
	returned class.  For PR gcj/260.

From-SVN: r34590
This commit is contained in:
Tom Tromey
2000-06-18 22:14:06 +00:00
committed by Tom Tromey
parent 3b572406c2
commit d4d17e95f1
3 changed files with 24 additions and 56 deletions
+4 -9
View File
@@ -80,13 +80,6 @@ java::lang::Class::forName (jstring className)
if (! className)
JvThrow (new java::lang::NullPointerException);
#if 0
// FIXME: should check syntax of CLASSNAME and throw
// IllegalArgumentException on failure.
// FIXME: should use class loader from calling method.
jclass klass = _Jv_FindClass (className, NULL);
#else
jsize length = _Jv_GetStringUTFLength (className);
char buffer[length];
_Jv_GetStringUTFRegion (className, 0, length, buffer);
@@ -99,8 +92,10 @@ java::lang::Class::forName (jstring className)
jclass klass = (buffer[0] == '['
? _Jv_FindClassFromSignature (name->data, NULL)
: _Jv_FindClass (name, NULL));
#endif
if (! klass)
if (klass)
_Jv_InitClass (klass);
else
JvThrow (new java::lang::ClassNotFoundException (className));
return klass;