From: Christophe R. <cr...@us...> - 2004-01-27 10:36:00
|
Update of /cvsroot/sbcl/sbcl/contrib/sb-simple-streams In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv31290/contrib/sb-simple-streams Modified Files: internal.lisp Log Message: 0.8.7.22: RIP (physical) PATHNAME-VERSION significance ... remove all internal discrimination based on the version field if the pathname involved has the Unix host. ... parsing of a physical pathname namestring (i.e. again either explicitly or implicitly on the Unix host) never produces a version from the namestring. ... make :if-exists :new-version behave like :if-exists :error, because despite weasel-words in CLHS someone might legitimately expect :if-exists :new-version not to clobber the old version. ... (this latter needs to be revisited, when OPEN is made aware of logical pathnames and the wacky logic they impose; we can support :new-version with LPNs, but only if OPEN is clever). ... make pathnames more likely to be read/print consistent, by throwing errors in more cases (we now pass PFD's test for that, not that it's that stringent). ... throw errors on use of (:absolute :up) and friends in CL operators, but... ... don't throw error on creation, and in fact test in sb-posix that we can use #p"/../" for what it means. Index: internal.lisp =================================================================== RCS file: /cvsroot/sbcl/sbcl/contrib/sb-simple-streams/internal.lisp,v retrieving revision 1.6 retrieving revision 1.7 diff -u -d -r1.6 -r1.7 --- internal.lisp 30 Nov 2003 17:11:06 -0000 1.6 +++ internal.lisp 27 Jan 2004 10:34:58 -0000 1.7 @@ -482,11 +482,11 @@ :new-version :error))) (case if-exists - ((:error nil) + ((:error nil :new-version) (setf mask (logior mask sb-unix:o_excl))) ((:rename :rename-and-delete) (setf mask (logior mask sb-unix:o_creat))) - ((:new-version :supersede) + ((:supersede) (setf mask (logior mask sb-unix:o_trunc))))) (t (setf if-exists nil))) ; :ignore-this-arg |