Fix file listing in submodules with project-files-relative-names=t
authorPär Bohrarper <par.bohrarper@gmail.com>
Fri, 14 Jun 2024 01:04:20 +0000 (04:04 +0300)
committerDmitry Gutov <dmitry@gutov.dev>
Fri, 14 Jun 2024 01:05:46 +0000 (04:05 +0300)
* lisp/progmodes/project.el (project--vc-list-files):
Prepend module names to files when project-files-relative-names is
non-nil (bug#71538).

lisp/progmodes/project.el

index a16ff30395bc9190d7f5c65f0dff1b1e7fbdb6f6..17550a83f95ce558f0c5a50b3a44776165dcb5ed 100644 (file)
@@ -714,10 +714,16 @@ See `project-vc-extra-root-markers' for the marker value format.")
                 (mapcar
                  (lambda (module)
                    (when (file-directory-p module)
-                     (project--vc-list-files
-                      (concat default-directory module)
-                      backend
-                      extra-ignores)))
+                     (let ((sub-files
+                            (project--vc-list-files
+                             (concat default-directory module)
+                             backend
+                             extra-ignores)))
+                       (if project-files-relative-names
+                           (mapcar (lambda (file)
+                                     (concat (file-name-as-directory module) file))
+                                   sub-files)
+                         sub-files))))
                  submodules)))
            (setq files
                  (apply #'nconc files sub-files))))