summary refs log tree commit diff
diff options
context:
space:
mode:
authorLudovic Courtès <ludo@gnu.org>2014-04-26 16:38:38 +0200
committerLudovic Courtès <ludo@gnu.org>2014-04-28 23:24:18 +0200
commiteee212710978fb2044d3312aff0bf33b508aa026 (patch)
tree2c68762f394d3dc47926bd2810e2026332c75321
parent02100028bb78b9bb17764eab0f009fd6fa07fd7b (diff)
downloadguix-eee212710978fb2044d3312aff0bf33b508aa026.tar.gz
store: (direct-store-path? (%store-prefix)) returns #f.
* guix/store.scm (direct-store-path?): Return #f if PATH
  is (%store-prefix).
* tests/store.scm ("direct-store-path?"): Add test.
-rw-r--r--guix/store.scm1
-rw-r--r--tests/store.scm3
2 files changed, 3 insertions, 1 deletions
diff --git a/guix/store.scm b/guix/store.scm
index c1898c5c81..2b924db213 100644
--- a/guix/store.scm
+++ b/guix/store.scm
@@ -839,6 +839,7 @@ be used internally by the daemon's build hook."
 This predicate is sometimes needed because files *under* a store path are not
 valid inputs."
   (and (store-path? path)
+       (not (string=? path (%store-prefix)))
        (let ((len (+ 1 (string-length (%store-prefix)))))
          (not (string-index (substring path len) #\/)))))
 
diff --git a/tests/store.scm b/tests/store.scm
index 90137b9754..b0f609f818 100644
--- a/tests/store.scm
+++ b/tests/store.scm
@@ -85,7 +85,8 @@
        (not (direct-store-path?
              (string-append
               (%store-prefix)
-              "/283gqy39v3g9dxjy26rynl0zls82fmcg-guile-2.0.7/bin/guile")))))
+              "/283gqy39v3g9dxjy26rynl0zls82fmcg-guile-2.0.7/bin/guile")))
+       (not (direct-store-path? (%store-prefix)))))
 
 (test-skip (if %store 0 13))