aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLudovic Courtès <ludo@gnu.org>2015-10-28 11:48:27 +0100
committerLudovic Courtès <ludo@gnu.org>2015-10-28 12:04:03 +0100
commita89dde1ed89a53f33556ab12ec73bafe495a796c (patch)
tree41fb3a1a5f1cb47ddd804fe83d7788f3389c930f
parentf151298fa00c9532d29cdc9eb4930fb2bfc23c06 (diff)
downloadguix-a89dde1ed89a53f33556ab12ec73bafe495a796c.tar
guix-a89dde1ed89a53f33556ab12ec73bafe495a796c.tar.gz
substitute: 'lookup-narinfos' returns exactly a list of narinfos.
* guix/scripts/substitute.scm (lookup-narinfos): Filter out #f values from CACHED, such that the end result is exactly a list of narinfos, not interspersed with #f. * guix/scripts/challenge.scm (discrepancies): Assume REMOTE is a list of narinfos.
-rw-r--r--guix/scripts/challenge.scm6
-rwxr-xr-xguix/scripts/substitute.scm4
2 files changed, 5 insertions, 5 deletions
diff --git a/guix/scripts/challenge.scm b/guix/scripts/challenge.scm
index 19a9b061b8..4a0c865b07 100644
--- a/guix/scripts/challenge.scm
+++ b/guix/scripts/challenge.scm
@@ -125,10 +125,8 @@ taken since we do not import the archives."
servers))
;; No 'assert-valid-narinfo' on purpose.
(narinfos -> (fold (lambda (narinfo vhash)
- (if narinfo
- (vhash-cons (narinfo-path narinfo) narinfo
- vhash)
- vhash))
+ (vhash-cons (narinfo-path narinfo) narinfo
+ vhash))
vlist-null
remote)))
(return (filter-map (lambda (item local)
diff --git a/guix/scripts/substitute.scm b/guix/scripts/substitute.scm
index 0377bb6abe..34fee5863f 100755
--- a/guix/scripts/substitute.scm
+++ b/guix/scripts/substitute.scm
@@ -598,7 +598,9 @@ information is available locally."
(let-values (((valid? value)
(cached-narinfo cache path)))
(if valid?
- (values (cons value cached) missing)
+ (if value
+ (values (cons value cached) missing)
+ (values cached missing))
(values cached (cons path missing)))))
'()
'()