diff options
author | Eelco Dolstra <e.dolstra@tudelft.nl> | 2006-02-02 16:27:31 +0000 |
---|---|---|
committer | Eelco Dolstra <e.dolstra@tudelft.nl> | 2006-02-02 16:27:31 +0000 |
commit | b90daaaf6c1f52fe93f4f845da20b122cfea2936 (patch) | |
tree | de7769774a4d64448af95bef4f975131c08d03ae /src/libstore | |
parent | 6e2eaaec96e96ce593dd1e38d03fcf8d1f62eb55 (diff) | |
download | guix-b90daaaf6c1f52fe93f4f845da20b122cfea2936.tar.gz |
* When killing a build hook, kill the entire process group (as
intended). This ensures that any ssh child processes to remote machines are also killed, and thus the Nix process on the remote machine also exits. Without this, the remote Nix process will continue until it exists or until its stdout buffer gets full and it locks up. (Partially fixes NIX-35.)
Diffstat (limited to 'src/libstore')
-rw-r--r-- | src/libstore/build.cc | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/src/libstore/build.cc b/src/libstore/build.cc index 193974bf83..123248c176 100644 --- a/src/libstore/build.cc +++ b/src/libstore/build.cc @@ -931,6 +931,7 @@ DerivationGoal::HookReply DerivationGoal::tryBuildHook() } /* parent */ + pid.setSeparatePG(true); logPipe.writeSide.close(); worker.childStarted(shared_from_this(), pid, singleton<set<int> >(logPipe.readSide), false); |