Commit b541bb15 authored by Robert P. Goldman's avatar Robert P. Goldman
Browse files

Fixes to make the argument to the :here directive in input locations be optional.

parent 7eca6d21
Loading
Loading
Loading
Loading
+12 −4
Original line number Diff line number Diff line
@@ -3353,9 +3353,15 @@ with a different configuration, so the configuration would be re-read then."
      (or (member directive '(:default-registry (:default-registry)) :test 'equal)
          (destructuring-bind (kw &rest rest) directive
            (case kw
              ((:include :directory :tree :here)
              ((:include :directory :tree)
               (and (length=n-p rest 1)
                    (location-designator-p (first rest))))
              ((:here)
               ;; additional pathname components in :here directives are
               ;; optional
               (or (and (length=n-p rest 1)
                        (location-designator-p (first rest)))
                   (length=n-p rest 0)))
              ((:exclude :also-exclude)
               (every #'stringp rest))
              (null rest))))
@@ -3523,10 +3529,12 @@ directive.")
           (funcall register (resolve-location pathname :directory t)
                    :recurse t :exclude *source-registry-exclusions*))))
      ((:here)
       (destructuring-bind (pathname) rest
         (when pathname
       (destructuring-bind (&optional pathname) rest
         (if pathname
             ;; interpret the rest as relative pathnames
             (funcall register (resolve-location (ensure-directory-pathname (merge-pathnames* *here-directory* pathname)) :directory t)))))
             (funcall register (resolve-location (ensure-directory-pathname (merge-pathnames* *here-directory* pathname)) :directory t))
             ;; else just the *here-directory*
             (funcall register (resolve-location (ensure-directory-pathname *here-directory*) :directory t)))))
      ((:exclude)
       (setf *source-registry-exclusions* rest))
      ((:also-exclude)