aboutsummaryrefslogtreecommitdiff
path: root/libjava/defineclass.cc
diff options
context:
space:
mode:
Diffstat (limited to 'libjava/defineclass.cc')
-rw-r--r--libjava/defineclass.cc11
1 files changed, 6 insertions, 5 deletions
diff --git a/libjava/defineclass.cc b/libjava/defineclass.cc
index e25b106..85f6ce3 100644
--- a/libjava/defineclass.cc
+++ b/libjava/defineclass.cc
@@ -41,10 +41,7 @@ details. */
#include <java/lang/IncompatibleClassChangeError.h>
#include <java/lang/reflect/Modifier.h>
-// we don't verify method names that match these.
-static _Jv_Utf8Const *clinit_name = _Jv_makeUtf8Const ("<clinit>", 8);
-static _Jv_Utf8Const *init_name = _Jv_makeUtf8Const ("<init>", 6);
-
+using namespace gcj;
// these go in some separate functions, to avoid having _Jv_InitClass
// inserted all over the place.
@@ -934,7 +931,11 @@ _Jv_ClassReader::handleClassBegin
// to include references to this class.
def->state = JV_STATE_PRELOADING;
- _Jv_RegisterClass (def);
+
+ {
+ JvSynchronize sync (&java::lang::Class::class$);
+ _Jv_RegisterClass (def);
+ }
if (super_class != 0)
{