shepherd: 'fork+exec-command/container' always returns a PID.

Fixes a regression introduced in
938448bf40 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.
This commit is contained in:
Ludovic Courtès 2022-04-10 23:48:03 +02:00
parent ada530acb1
commit f429596627
No known key found for this signature in database
GPG key ID: 090B11993D9AEBB5

View file

@ -240,7 +240,7 @@ (define (strip-pid args)
(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: