From 2f54a73fc1a1466dbe576bfe0aab80cea9d4ff93 Mon Sep 17 00:00:00 2001 From: David Daney <ddaney@avtrex.com> Date: Sat, 20 Sep 2003 02:57:07 +0000 Subject: Reference.java (clear): Set referent to null and synchronize. 2003-09-19 David Daney <ddaney@avtrex.com> * java/lang/ref/Reference.java (clear): Set referent to null and synchronize. From-SVN: r71597 --- libjava/java/lang/ref/Reference.java | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) (limited to 'libjava/java/lang/ref/Reference.java') diff --git a/libjava/java/lang/ref/Reference.java b/libjava/java/lang/ref/Reference.java index 2f6235e..a6385a8 100644 --- a/libjava/java/lang/ref/Reference.java +++ b/libjava/java/lang/ref/Reference.java @@ -176,7 +176,12 @@ public abstract class Reference */ public void clear() { - cleared = true; + // Must synchronize so changes are visible in finalizer thread. + synchronized (lock) + { + referent = null; + cleared = true; + } } /** -- cgit v1.1