Update of /cvsroot/sbcl/sbcl
In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv25276
Fixed bug in OPEN / CLOSE interaction that caused file deletion when
appending stream was closed with :ABORT T.
... BUGS entry about similar behaviour when superseding files.
... Regression test for the same.
RCS file: /cvsroot/sbcl/sbcl/BUGS,v
retrieving revision 1.386
retrieving revision 1.387
diff -u -d -r1.386 -r1.387
--- BUGS 17 May 2004 07:58:42 -0000 1.386
+++ BUGS 20 May 2004 14:47:54 -0000 1.387
@@ -1443,3 +1443,16 @@
to about 1024 (and similarly for signed-byte), so
(open "/dev/zero" :element-type '(unsigned-byte 1025))
gives an error in sbcl-0.8.10.
+325: "CLOSE :ABORT T on supeseding streams"
+ Closing a stream opened with :IF-EXISTS :SUPERSEDE with :ABORT T leaves no
+ file on disk, even if one existed before opening.
+ The illegality of this is not crystal clear, as the ANSI dictionary
+ entry for CLOSE says that when :ABORT is T superseded files are not
+ superseded (ie. the original should be restored), whereas the OPEN
+ entry says about :IF-EXISTS :SUPERSEDE "If possible, the
+ implementation should not destroy the old file until the new stream
+ is closed." -- implying that even though undesirable, early deletion
+ is legal. Restoring the original would none the less be the polite
+ thing to do.
RCS file: /cvsroot/sbcl/sbcl/NEWS,v
retrieving revision 1.544
retrieving revision 1.545
diff -u -d -r1.544 -r1.545
--- NEWS 20 May 2004 14:34:17 -0000 1.544
+++ NEWS 20 May 2004 14:47:54 -0000 1.545
@@ -2403,6 +2403,8 @@
SB-EXT:INHIBIT-WARNINGS OPTIMIZE quality. See the manual for
documentation on this feature. The SB-EXT:INHIBIT-WARNINGS
quality should be considered deprecated.
+ * fixed bug: CLOSE :ABORT T on appending stream no longer causes
+ file deletion.
* fixed bug: Invalid slot specification errors now print correctly.
(thanks to Zach Beane)
* fixed bug 320: Shared to local slot value transfers in class