aboutsummaryrefslogtreecommitdiff
path: root/libjava/java/lang
diff options
context:
space:
mode:
Diffstat (limited to 'libjava/java/lang')
-rw-r--r--libjava/java/lang/natClass.cc6
-rw-r--r--libjava/java/lang/reflect/natField.cc15
2 files changed, 7 insertions, 14 deletions
diff --git a/libjava/java/lang/natClass.cc b/libjava/java/lang/natClass.cc
index 11f5e50..b934ae7 100644
--- a/libjava/java/lang/natClass.cc
+++ b/libjava/java/lang/natClass.cc
@@ -678,7 +678,7 @@ java::lang::Class::finalize (void)
void
java::lang::Class::initializeClass (void)
{
- // jshort-circuit to avoid needless locking.
+ // short-circuit to avoid needless locking.
if (state == JV_STATE_DONE)
return;
@@ -713,7 +713,9 @@ java::lang::Class::initializeClass (void)
wait ();
// Steps 3 & 4.
- if (state == JV_STATE_DONE || state == JV_STATE_IN_PROGRESS || thread == self)
+ if (state == JV_STATE_DONE
+ || state == JV_STATE_IN_PROGRESS
+ || thread == self)
{
_Jv_MonitorExit (this);
return;
diff --git a/libjava/java/lang/reflect/natField.cc b/libjava/java/lang/reflect/natField.cc
index 57421d6..0aedc4e 100644
--- a/libjava/java/lang/reflect/natField.cc
+++ b/libjava/java/lang/reflect/natField.cc
@@ -1,6 +1,6 @@
// natField.cc - Implementation of java.lang.reflect.Field native methods.
-/* Copyright (C) 1998, 1999, 2000 Free Software Foundation
+/* Copyright (C) 1998, 1999, 2000, 2001 Free Software Foundation
This file is part of libgcj.
@@ -44,17 +44,8 @@ jclass
java::lang::reflect::Field::getType ()
{
jfieldID fld = _Jv_FromReflectedField (this);
- if (! fld->isResolved())
- {
- JvSynchronize sync (declaringClass);
- if (! fld->isResolved())
- {
- fld->type
- = _Jv_FindClassFromSignature(((Utf8Const*) (fld->type))->data,
- declaringClass->getClassLoader());
- fld->flags &= ~_Jv_FIELD_UNRESOLVED_FLAG;
- }
- }
+ JvSynchronize sync (declaringClass);
+ _Jv_ResolveField (fld, declaringClass->getClassLoader ());
return fld->type;
}