From 75fd7cc2238ad4fb6c838ebac5f36aeb16ff7cbf Mon Sep 17 00:00:00 2001 From: "Brian T. Rice" Date: Wed, 16 Feb 2011 20:15:35 -0800 Subject: [PATCH] Fixed functionality of FilterStream (select: for streams). --- src/core/stream.slate | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/src/core/stream.slate b/src/core/stream.slate index 3c35d02..711347d 100644 --- a/src/core/stream.slate +++ b/src/core/stream.slate @@ -667,10 +667,12 @@ s@(Stream traits) reject: block s@(FilterStream traits) next: n putInto: seq startingAt: start [| numWritten | numWritten := 0. + result ::= seq writer. + result position := start. [s source isAtEnd \/ [numWritten >= seq size]] whileFalse: [s source skipUntil: [| :elem | s block applyWith: elem]. - [s source isAtEnd not /\ [numWritten < seq size /\ [s block applyWith: s peek]]] - whileTrue: [result nextPut: s next. numWritten += 1]]. + [s source isAtEnd not /\ [numWritten < seq size /\ [s block applyWith: s source peek]]] + whileTrue: [result nextPut: s source next. numWritten += 1]]. numWritten ]. -- 2.11.4.GIT