aboutsummaryrefslogtreecommitdiff
path: root/gnu/build/shepherd.scm
diff options
context:
space:
mode:
authorLudovic Courtès <ludo@gnu.org>2022-04-10 23:48:03 +0200
committerLudovic Courtès <ludo@gnu.org>2022-04-11 00:25:33 +0200
commitf42959662765d1cd47137ff5da09086fc6a62e99 (patch)
tree275d1175ef9ece059287d1b02f62830340daa839 /gnu/build/shepherd.scm
parentada530acb1e848daaac027872e6bad067e82207b (diff)
downloadguix-f42959662765d1cd47137ff5da09086fc6a62e99.tar
guix-f42959662765d1cd47137ff5da09086fc6a62e99.tar.gz
shepherd: 'fork+exec-command/container' always returns a PID.
Fixes a regression introduced in 938448bf40fc77092859352d2243e2d0c236375f whereby 'fork+exec-command/container' would return #t, then used as the running value of the 'guix-daemon' service in the installer. Upon installation completion, stopping the 'guix-daemon' service would fail with wrong-type-arg because that #t would be passed to the 'stop' method in lieu of a PID. * gnu/build/shepherd.scm (fork+exec-command/container): Return a PID rather than #t.
Diffstat (limited to 'gnu/build/shepherd.scm')
-rw-r--r--gnu/build/shepherd.scm2
1 files changed, 1 insertions, 1 deletions
diff --git a/gnu/build/shepherd.scm b/gnu/build/shepherd.scm
index 474054f645..595db40f2e 100644
--- a/gnu/build/shepherd.scm
+++ b/gnu/build/shepherd.scm
@@ -240,7 +240,7 @@ on Hurd systems for instance, fallback to direct forking."
(apply exec-command* command (strip-pid args)))
(lambda ()
(primitive-_exit 127))))
- (pid #t))))
+ (pid pid)))) ;XXX: assuming the same PID namespace
(apply fork+exec-command command (strip-pid args)))))
;; Local Variables: