diff --git a/piclib/scheme/base.scm b/piclib/scheme/base.scm index 4ddabc80..28119e41 100644 --- a/piclib/scheme/base.scm +++ b/piclib/scheme/base.scm @@ -536,10 +536,9 @@ ;; 6.13. Input and output (define (call-with-port port proc) - (dynamic-wind - (lambda () #f) - (lambda () (proc port)) - (lambda () (close-port port)))) + (let ((value (proc port))) + (close-port port) + value)) (export current-input-port current-output-port