--- jsr166/src/jsr166y/LinkedTransferQueue.java 2009/11/16 01:02:49 1.71 +++ jsr166/src/jsr166y/LinkedTransferQueue.java 2010/04/05 15:50:51 1.72 @@ -1125,7 +1125,11 @@ public class LinkedTransferQueue exte * @return {@code true} if this queue contains no elements */ public boolean isEmpty() { - return firstOfMode(true) == null; + for (Node p = head; p != null; p = succ(p)) { + if (!p.isMatched()) + return !p.isData; + } + return true; } public boolean hasWaitingConsumer() {