[Bug-openmcl] close bug

Gary Byers gb at clozure.com
Thu Jan 29 17:29:13 MST 2004



On Thu, 29 Jan 2004, bryan o'connor wrote:

> multiply closing a file-stream is broken in the latest cvs.
> (i found this one using the sbcl source as a stress test)
>
> for example:
> 	(with-open-file (s "foo.txt" :direction :output)
> 		(close s))
>
> would fail at the #'close in the with-open-file macro with
> an attempt to write to a closed file.
>
> it looks liked the "closed" slot wasn't being properly set.
> here's the patch i used in my copy.
>
> 				...bryan
>
>

The default CLOSE method on STREAM seemed to have wanted to set
the CLOSED slot to NIL.  If that method wasn't completely backwards,
subclass methods would probably work if they just returned what
CALL-NEXT-METHOD returned (and may want to check OPEN-STREAM-P
before doing anything.)

(Whether the other methods are broken or not, this one certainly
is ...)



More information about the Bug-openmcl mailing list