Skip to content
Snippets Groups Projects
Commit ce556b5f authored by Francois-Rene Rideau's avatar Francois-Rene Rideau
Browse files

1.639: fix Bug 539007 - make sure to read a pathname is a directory before to recurse.

parent 679fd396
No related branches found
No related tags found
No related merge requests found
...@@ -250,7 +250,7 @@ ...@@ -250,7 +250,7 @@
;; This parameter isn't actually user-visible ;; This parameter isn't actually user-visible
;; -- please use the exported function ASDF:ASDF-VERSION below. ;; -- please use the exported function ASDF:ASDF-VERSION below.
;; the 1+ hair is to ensure that we don't do an inadvertent find and replace ;; the 1+ hair is to ensure that we don't do an inadvertent find and replace
(subseq "VERSION:1.638" (1+ (length "VERSION")))) (subseq "VERSION:1.639" (1+ (length "VERSION"))))
(defun asdf-version () (defun asdf-version ()
"Exported interface to the version of ASDF currently installed. A string. "Exported interface to the version of ASDF currently installed. A string.
...@@ -2692,19 +2692,20 @@ with a different configuration, so the configuration would be re-read then." ...@@ -2692,19 +2692,20 @@ with a different configuration, so the configuration would be re-read then."
(return `(:source-registry ,@(nreverse directives))))))))) (return `(:source-registry ,@(nreverse directives)))))))))
(defun register-asd-directory (directory &key recurse exclude collect) (defun register-asd-directory (directory &key recurse exclude collect)
(if (not recurse) (let ((directory (ensure-directory-pathname directory)))
(funcall collect (ensure-directory-pathname directory)) (if (not recurse)
(let* ((files (ignore-errors (funcall collect directory)
(directory (merge-pathnames* *wild-asd* directory) (let* ((files (ignore-errors
#+sbcl #+sbcl :resolve-symlinks nil (directory (merge-pathnames* *wild-asd* directory)
#+clisp #+clisp :circle t))) #+sbcl #+sbcl :resolve-symlinks nil
(dirs (remove-duplicates (mapcar #'pathname-directory-pathname files) #+clisp #+clisp :circle t)))
:test #'equal))) (dirs (remove-duplicates (mapcar #'pathname-directory-pathname files)
(loop :test #'equal)))
:for dir :in dirs (loop
:unless (loop :for x :in exclude :for dir :in dirs
:thereis (find x (pathname-directory dir) :test #'equal)) :unless (loop :for x :in exclude
:do (funcall collect dir))))) :thereis (find x (pathname-directory dir) :test #'equal))
:do (funcall collect dir))))))
(defparameter *default-source-registries* (defparameter *default-source-registries*
'(environment-source-registry '(environment-source-registry
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment