aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--libjava/ChangeLog5
-rw-r--r--libjava/java/lang/natObject.cc7
2 files changed, 11 insertions, 1 deletions
diff --git a/libjava/ChangeLog b/libjava/ChangeLog
index 6d23580..f5a9dbb 100644
--- a/libjava/ChangeLog
+++ b/libjava/ChangeLog
@@ -1,3 +1,8 @@
+2005-08-12 Morgan Deters <mdeters@morgandeters.com>
+
+ PR libgcj/23353:
+ * java/lang/natObject.cc (clone): Clear sync_info.
+
2005-07-26 Tom Tromey <tromey@redhat.com>
* gnu/java/net/protocol/ftp/package.html,
diff --git a/libjava/java/lang/natObject.cc b/libjava/java/lang/natObject.cc
index aa79500..87f2044 100644
--- a/libjava/java/lang/natObject.cc
+++ b/libjava/java/lang/natObject.cc
@@ -1,6 +1,6 @@
// natObject.cc - Implementation of the Object class.
-/* Copyright (C) 1998, 1999, 2000, 2001, 2002, 2003 Free Software Foundation
+/* Copyright (C) 1998, 1999, 2000, 2001, 2002, 2003, 2005 Free Software Foundation
This file is part of libgcj.
@@ -104,6 +104,11 @@ java::lang::Object::clone (void)
}
memcpy ((void *) r, (void *) this, size);
+#ifndef JV_HASH_SYNCHRONIZATION
+ // Guarantee that the locks associated to the two objects are
+ // distinct.
+ r->sync_info = NULL;
+#endif
return r;
}