Changeset 7468 for branches/working-0710


Ignore:
Timestamp:
Oct 18, 2007, 2:55:59 PM (12 years ago)
Author:
palter
Message:

Just close the stream (with :ABORT T) in the finalizer for :AUTO-CLOSE T.
(The previous finalizer was broken; I don't know how it ever worked.)

File:
1 edited

Legend:

Unmodified
Added
Removed
  • branches/working-0710/ccl/level-1/l1-streams.lisp

    r7467 r7468  
    33063306       (terminate-when-unreachable stream
    33073307                                   (lambda (stream)
    3308                                      (let ((fd (shiftf (ioblock-device stream) nil)))
    3309                                        (when fd
    3310                                          (fd-close fd))))))
     3308                                     (close stream :abort t))))
    33113309    stream))
    33123310
     
    53725370
    53735371(defun fd-stream-close (s ioblock)
     5372  (cancel-terminate-when-unreachable s)
    53745373  (when (ioblock-dirty ioblock)
    53755374    (stream-finish-output s))
     
    53775376    (when fd
    53785377      (setf (ioblock-device ioblock) nil)
    5379       (fd-close fd)
    5380       (cancel-terminate-when-unreachable s))))
     5378      (fd-close fd))))
    53815379
    53825380(defun fd-stream-force-output (s ioblock count finish-p)
Note: See TracChangeset for help on using the changeset viewer.