aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLudovic Courtès <ludo@gnu.org>2014-04-14 00:17:43 +0200
committerLudovic Courtès <ludo@gnu.org>2014-04-14 00:17:43 +0200
commit66ef5411471e8d5f25815b9ab1f360ad56e08544 (patch)
treed4cce724b298ce4d24cdc339b3ed45b6366e5824
parent99e17dc9274c82911c284eaeccdba08b7425f018 (diff)
downloadguix-66ef5411471e8d5f25815b9ab1f360ad56e08544.tar
guix-66ef5411471e8d5f25815b9ab1f360ad56e08544.tar.gz
offload: Better synchronize with remote invocation of 'guix archive --missing'.
* guix/scripts/offload.scm (send-files)[missing-files]: Call 'waitpid' after reading all of MISSING.
-rw-r--r--guix/scripts/offload.scm6
1 files changed, 4 insertions, 2 deletions
diff --git a/guix/scripts/offload.scm b/guix/scripts/offload.scm
index c5cae4b07a..e340b7e8cc 100644
--- a/guix/scripts/offload.scm
+++ b/guix/scripts/offload.scm
@@ -443,9 +443,11 @@ success, #f otherwise."
"-i" (build-machine-private-key machine)
(build-machine-name machine)
"guix" "archive" "--missing")
- (open-input-string files))))
+ (open-input-string files)))
+ ((result)
+ (get-string-all missing)))
(for-each waitpid pids)
- (string-tokenize (get-string-all missing))))
+ (string-tokenize result)))
(with-store store
(guard (c ((nix-protocol-error? c)