diff options
| author | tromey <tromey@138bc75d-0d04-0410-961f-82ee72b054a4> | 2003-09-20 02:57:07 +0000 |
|---|---|---|
| committer | tromey <tromey@138bc75d-0d04-0410-961f-82ee72b054a4> | 2003-09-20 02:57:07 +0000 |
| commit | 8c970a04e2a2223363c14af660cd53fcfa8a1cc0 (patch) | |
| tree | 599476f4a666c655364b56af95e2969aeb26d471 /libjava | |
| parent | 939852640aadc1f6ce76e15efba37d836d4261be (diff) | |
| download | ppe42-gcc-8c970a04e2a2223363c14af660cd53fcfa8a1cc0.tar.gz ppe42-gcc-8c970a04e2a2223363c14af660cd53fcfa8a1cc0.zip | |
2003-09-19 David Daney <ddaney@avtrex.com>
* java/lang/ref/Reference.java (clear): Set referent to null and
synchronize.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@71597 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'libjava')
| -rw-r--r-- | libjava/ChangeLog | 5 | ||||
| -rw-r--r-- | libjava/java/lang/ref/Reference.java | 7 |
2 files changed, 11 insertions, 1 deletions
diff --git a/libjava/ChangeLog b/libjava/ChangeLog index a7648b38e24..4d5c52ec368 100644 --- a/libjava/ChangeLog +++ b/libjava/ChangeLog @@ -1,3 +1,8 @@ +2003-09-19 David Daney <ddaney@avtrex.com> + + * java/lang/ref/Reference.java (clear): Set referent to null and + synchronize. + 2003-09-19 Michael Koch <konqueror@gmx.de> * gnu/java/nio/NIODatagramSocket.java, diff --git a/libjava/java/lang/ref/Reference.java b/libjava/java/lang/ref/Reference.java index 2f6235e3ba8..a6385a81617 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; + } } /** |

