From: Chris Hanson Date: Wed, 15 May 1996 18:47:19 +0000 (+0000) Subject: Eliminate loop in INPUT-BUFFER/READ-SUBSTRING. When line-translation X-Git-Tag: 20090517-FFI~5510 X-Git-Url: https://birchwood-abbey.net/git?a=commitdiff_plain;h=bac00a4f07468616f6919c503a5e9926b0832935;p=mit-scheme.git Eliminate loop in INPUT-BUFFER/READ-SUBSTRING. When line-translation was in effect, this loop caused this procedure to read input until the buffer was filled. However, the procedure is supposed to return as soon as some input is available. --- diff --git a/v7/src/runtime/io.scm b/v7/src/runtime/io.scm index 31a36d3e7..216f4e4c8 100644 --- a/v7/src/runtime/io.scm +++ b/v7/src/runtime/io.scm @@ -1,6 +1,6 @@ #| -*-Scheme-*- -$Id: io.scm,v 14.46 1996/04/24 03:48:36 cph Exp $ +$Id: io.scm,v 14.47 1996/05/15 18:47:19 cph Exp $ Copyright (c) 1988-96 Massachusetts Institute of Technology @@ -1056,9 +1056,7 @@ MIT in each case. |# (begin (substring-move-left! bstring bstart bend string index) (set-input-buffer/start-index! buffer bend) - (if (channel-open? (input-buffer/channel buffer)) - (read-directly (fix:+ index available)) - (fix:+ index available)))))) + (fix:+ index available))))) ((or (fix:= (input-buffer/real-end buffer) 0) (channel-closed? (input-buffer/channel buffer))) index)