From b90daaaf6c1f52fe93f4f845da20b122cfea2936 Mon Sep 17 00:00:00 2001
From: Eelco Dolstra <e.dolstra@tudelft.nl>
Date: Thu, 2 Feb 2006 16:27:31 +0000
Subject: [PATCH] * 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.)

---
 src/libstore/build.cc | 1 +
 1 file changed, 1 insertion(+)

diff --git a/src/libstore/build.cc b/src/libstore/build.cc
index 193974bf8..123248c17 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);
-- 
GitLab