0.8.7.20:
authorChristophe Rhodes <csr21@cam.ac.uk>
Tue, 20 Jan 2004 18:24:02 +0000 (18:24 +0000)
committerChristophe Rhodes <csr21@cam.ac.uk>
Tue, 20 Jan 2004 18:24:02 +0000 (18:24 +0000)
MERGE-PATHNAME fix:
... applies when (a) PATHNAME does not provide a NAME; (b)
DEFAULT-PATHNAME has a non-null VERSION.
... "If pathname does specify a name, then the version is not
affected by default-pathname. If this process leaves the
version missing, the default-version is used."

NEWS
src/code/target-pathname.lisp
version.lisp-expr

diff --git a/NEWS b/NEWS
index 8be61c1..176d94e 100644 (file)
--- a/NEWS
+++ b/NEWS
@@ -2258,8 +2258,10 @@ changes in sbcl-0.8.8 relative to sbcl-0.8.7:
        host is already defined.
     ** RENAME-FILE works on streams instead of signalling an internal
        type error.
-    ** PEEK-CHAR now uses the current readtable when determining
-       whether a character is whitespace.
+    ** PEEK-CHAR uses the current readtable when determining whether
+       or not a character is whitespace.
+    ** MERGE-PATHNAMES handles the case when the pathname does not
+       specify a name while the default-pathname specifies a version.
 
 planned incompatible changes in 0.8.x:
   * (not done yet, but planned:) When the profiling interface settles
index f647b52..542432a 100644 (file)
             (maybe-diddle-case (%pathname-type defaults)
                                diddle-case))
         (or (%pathname-version pathname)
+            (and (not (%pathname-name pathname)) (%pathname-version defaults))
             default-version))))))
 
 (defun import-directory (directory diddle-case)
index 305174d..cfd6bd6 100644 (file)
@@ -17,4 +17,4 @@
 ;;; checkins which aren't released. (And occasionally for internal
 ;;; versions, especially for internal versions off the main CVS
 ;;; branch, it gets hairier, e.g. "0.pre7.14.flaky4.13".)
-"0.8.7.19"
+"0.8.7.20"