[Openmcl-cvs-notifications] r10872 - in /trunk/source/level-1: l1-files.lisp l1-pathnames.lisp

gb at clozure.com gb at clozure.com
Thu Sep 25 08:00:13 EDT 2008


Author: gb
Date: Thu Sep 25 08:00:12 2008
New Revision: 10872

Log:
In STRING-TO-PATHNAME, only set a physical pathname's version slot =

if the name is non-nil.  (Among other things, the version of a pathname
created by (parse-namestring "") has to be NIL.)  This (and the recent
change to EQUAL) seem to fix the test suite failures that were introduced
a few weeks ago.

In %COMPONENT-MATCH-P, treat a wild component of :NEWEST (which should
only be present if versions are being compared) like wildcard
designators (e.g., not as a concrete thing to be compared against a
string or list.)  Among other things, this seems to fix some
cases involving CCL::BACK-TRANSLATE-PATHNAME and the ccl logical
host.

(The trunk passes all tests in the test suite again.)

Modified:
    trunk/source/level-1/l1-files.lisp
    trunk/source/level-1/l1-pathnames.lisp

Modified: trunk/source/level-1/l1-files.lisp
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D
--- trunk/source/level-1/l1-files.lisp (original)
+++ trunk/source/level-1/l1-files.lisp Thu Sep 25 08:00:12 2008
@@ -545,7 +545,7 @@
       (unless (eq start-pos end-pos)
         (setq name (%std-name-component (%substr sstr start-pos end-pos))))
       (if (eq host :unspecific)
-	(%cons-pathname directory name type :newest device)
+	(%cons-pathname directory name type (if name :newest) device)
         (%cons-logical-pathname directory name type host version)))))
 =

 (defun parse-namestring (thing &optional host (defaults *default-pathname-=
defaults*)

Modified: trunk/source/level-1/l1-pathnames.lisp
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D
--- trunk/source/level-1/l1-pathnames.lisp (original)
+++ trunk/source/level-1/l1-pathnames.lisp Thu Sep 25 08:00:12 2008
@@ -116,7 +116,7 @@
 (defun %component-match-p (name wild) =

   (if (or (eq name :unspecific)(eq name :wild)(eq name :wild-inferiors)(an=
d (stringp name) (or  (string=3D name "*")(string=3D name "**"))))
     (setq name nil))  =

-  (if (or (eq wild :unspecific)(eq wild :wild)(eq wild :wild-inferiors)(an=
d (stringp wild) (or (string=3D wild "*")(string=3D wild "**"))))
+  (if (or (eq wild :unspecific)(eq wild :wild)(eq wild :wild-inferiors)(eq=
 wild :newest)(and (stringp wild) (or (string=3D wild "*")(string=3D wild "=
**"))))
     (setq wild nil))
   (cond ((null name) =

          (null wild))



More information about the Openmcl-cvs-notifications mailing list