--- old/src/java.base/share/classes/java/util/stream/AbstractPipeline.java 2016-01-26 21:36:51.241662200 +0600 +++ new/src/java.base/share/classes/java/util/stream/AbstractPipeline.java 2016-01-26 21:36:50.885116900 +0600 @@ -327,6 +327,8 @@ @Override @SuppressWarnings("unchecked") public S onClose(Runnable closeHandler) { + if (linkedOrConsumed) + throw new IllegalStateException(MSG_STREAM_LINKED); Objects.requireNonNull(closeHandler); Runnable existingHandler = sourceStage.sourceCloseAction; sourceStage.sourceCloseAction =