summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--guix/git-download.scm7
1 files changed, 6 insertions, 1 deletions
diff --git a/guix/git-download.scm b/guix/git-download.scm
index 5019a3e62f..7397cbe7f5 100644
--- a/guix/git-download.scm
+++ b/guix/git-download.scm
@@ -191,7 +191,12 @@ absolute file name and STAT is the result of 'lstat'."
                                                 result)))
                                vlist-null
                                files))
-         (prefix-length  (+ 1 (string-length (canonicalize-path directory))))
+
+         ;; Note: For this to work we must *not* call 'canonicalize-path' on
+         ;; DIRECTORY or we would get discrepancies of the returned lambda is
+         ;; called with a non-canonical file name.
+         (prefix-length  (+ 1 (string-length directory)))
+
          (status         (close-pipe pipe)))
     (and (zero? status)
          (lambda (file stat)