--- jsr166/src/jsr166y/ForkJoinTask.java 2010/09/18 12:10:21 1.63 +++ jsr166/src/jsr166y/ForkJoinTask.java 2010/09/20 20:42:37 1.64 @@ -661,7 +661,7 @@ public abstract class ForkJoinTask im else { while ((s = status) >= 0) { synchronized (this) { // interruptible form of awaitDone - if (UNSAFE.compareAndSwapInt(this, statusOffset, + if (UNSAFE.compareAndSwapInt(this, statusOffset, s, SIGNAL)) { while (status >= 0) wait();