diff --git a/asdf.lisp b/asdf.lisp
index 5228fa5a38a3b3eefa2df18355071a3f7b9441a9..5737ced1b1e3a4501d5de34fafa1872139f0e782 100644
--- a/asdf.lisp
+++ b/asdf.lisp
@@ -3526,7 +3526,7 @@ directive.")
        (destructuring-bind (pathname) rest
          (when pathname
              ;; interpret the rest as relative pathnames
-             (funcall register (resolve-location pathname :directory t)))))
+             (funcall register (resolve-location (ensure-directory-pathname (merge-pathnames* *here-directory* pathname)) :directory t)))))
       ((:exclude)
        (setf *source-registry-exclusions* rest))
       ((:also-exclude)