From 4b9d88cc1d25141a14a2e7a52bd04fd165702893 Mon Sep 17 00:00:00 2001 From: Matthew Flatt Date: Thu, 19 May 2011 15:52:48 -0700 Subject: [PATCH] fix `sequence->stream' Closes PR 11932 --- collects/racket/private/for.rkt | 2 +- collects/tests/racket/stream.rktl | 6 ++++++ 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/collects/racket/private/for.rkt b/collects/racket/private/for.rkt index d5afd14517..2bffa68e96 100644 --- a/collects/racket/private/for.rkt +++ b/collects/racket/private/for.rkt @@ -1062,7 +1062,7 @@ (set! vals (call-with-values (lambda () (pos->val pos)) list)) (unless (if pre-cont? (apply pre-cont? vals) #t) (set! vals #f) - (set! empty? #f))) + (set! empty? #t))) (set! empty? #t)) (set! done? #t))) (make-do-stream (lambda () (force!) empty?) diff --git a/collects/tests/racket/stream.rktl b/collects/tests/racket/stream.rktl index 9c17fc1722..45b607400b 100644 --- a/collects/tests/racket/stream.rktl +++ b/collects/tests/racket/stream.rktl @@ -21,4 +21,10 @@ (stream-cons (let loop () (loop)) empty))) +(test #t stream-empty? (sequence->stream (in-producer void (void)))) +(test #t stream-empty? (sequence->stream (in-port read-byte (open-input-string "")))) + +(test "hello" stream-first (sequence->stream (in-producer (lambda () "hello") (void)))) +(test 65 stream-first (sequence->stream (in-port read-byte (open-input-string "A")))) + (report-errs)