summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--libjava/ChangeLog4
-rw-r--r--libjava/java/lang/Class.h5
-rw-r--r--libjava/java/lang/natClass.cc4
3 files changed, 8 insertions, 5 deletions
diff --git a/libjava/ChangeLog b/libjava/ChangeLog
index 4bb2f261a79..f78a7003508 100644
--- a/libjava/ChangeLog
+++ b/libjava/ChangeLog
@@ -1,5 +1,9 @@
2002-11-02 Tom Tromey <tromey@redhat.com>
+ * java/lang/Class.h: Move JV_STATE_ERROR before JV_STATE_DONE.
+ * java/lang/natClass.cc (initializeClass): Don't return just
+ because self==thread.
+
For PR java/8415:
* java/lang/reflect/natMethod.cc (getType): Use _Jv_FindClass.
* prims.cc (_Jv_FindClassFromSignature): Indentation fix.
diff --git a/libjava/java/lang/Class.h b/libjava/java/lang/Class.h
index 9a8d4183b6f..881fb77c44e 100644
--- a/libjava/java/lang/Class.h
+++ b/libjava/java/lang/Class.h
@@ -46,9 +46,10 @@ enum
JV_STATE_LINKED = 9, // Strings interned.
JV_STATE_IN_PROGRESS = 10, // <Clinit> running.
- JV_STATE_DONE = 12, //
- JV_STATE_ERROR = 14 // must be last.
+ JV_STATE_ERROR = 12,
+
+ JV_STATE_DONE = 14 // Must be last.
};
struct _Jv_Field;
diff --git a/libjava/java/lang/natClass.cc b/libjava/java/lang/natClass.cc
index fca074152ce..9e861111563 100644
--- a/libjava/java/lang/natClass.cc
+++ b/libjava/java/lang/natClass.cc
@@ -741,9 +741,7 @@ 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)
{
_Jv_MonitorExit (this);
return;
OpenPOWER on IntegriCloud