aboutsummaryrefslogtreecommitdiff
path: root/build-aux/build-self.scm
diff options
context:
space:
mode:
authorLudovic Courtès <ludo@gnu.org>2018-04-08 21:11:37 +0200
committerLudovic Courtès <ludo@gnu.org>2018-04-08 21:11:37 +0200
commitf27a7128406f768fc8900144cafafe00aa2d7743 (patch)
tree24086d1612d55f4c532e22f1bcaeca1d4af46bbe /build-aux/build-self.scm
parent16c28becf2a2fcd48f52b83dc17889587b806615 (diff)
downloadguix-f27a7128406f768fc8900144cafafe00aa2d7743.tar
guix-f27a7128406f768fc8900144cafafe00aa2d7743.tar.gz
build-self: Add missing 'close-pipe' call.
* build-aux/build-self.scm (build): Call 'close-pipe'.
Diffstat (limited to 'build-aux/build-self.scm')
-rw-r--r--build-aux/build-self.scm16
1 files changed, 9 insertions, 7 deletions
diff --git a/build-aux/build-self.scm b/build-aux/build-self.scm
index 5ec76a588f..bccb7a959e 100644
--- a/build-aux/build-self.scm
+++ b/build-aux/build-self.scm
@@ -277,14 +277,16 @@ files."
(mbegin %store-monad
(show-what-to-build* (list build))
(built-derivations (list build))
- (let ((pipe (begin
- (setenv "GUILE_WARN_DEPRECATED" "no") ;be quiet and drive
- (open-pipe* OPEN_READ
- (derivation->output-path build)
- source system))))
- (match (get-string-all pipe)
+ (let* ((pipe (begin
+ (setenv "GUILE_WARN_DEPRECATED" "no") ;be quiet and drive
+ (open-pipe* OPEN_READ
+ (derivation->output-path build)
+ source system)))
+ (str (get-string-all pipe))
+ (status (close-pipe pipe)))
+ (match str
((? eof-object?)
- (error "build program failed" build))
+ (error "build program failed" (list build status)))
((? derivation-path? drv)
(mbegin %store-monad
(return (newline (current-output-port)))