civodul pushed a commit to tag 1.8
in repository guix.
commit ad790022fddd5627eb237b95acae210c9b00c3de
Author: Eelco Dolstra <[email protected]>
Date: Fri Dec 12 13:41:00 2014 +0100
Doh
---
src/libstore/build.cc | 2 +-
src/libutil/util.cc | 4 ++--
2 files changed, 3 insertions(+), 3 deletions(-)
diff --git a/src/libstore/build.cc b/src/libstore/build.cc
index 36436d7..127fcfd 100644
--- a/src/libstore/build.cc
+++ b/src/libstore/build.cc
@@ -1918,7 +1918,7 @@ void DerivationGoal::startBuilder()
options.allowVfork = !buildUser.enabled();
pid = startProcess([&]() {
runChild();
- });
+ }, options);
/* parent */
pid.setSeparatePG(true);
diff --git a/src/libutil/util.cc b/src/libutil/util.cc
index 5895e72..a91cf26 100644
--- a/src/libutil/util.cc
+++ b/src/libutil/util.cc
@@ -850,7 +850,7 @@ void killUser(uid_t uid)
}
_exit(0);
- });
+ }, options);
int status = pid.wait(true);
if (status != 0)
@@ -885,7 +885,7 @@ static pid_t doFork(bool allowVfork, std::function<void()>
fun)
pid_t startProcess(std::function<void()> fun, const ProcessOptions & options)
{
auto wrapper = [&]() {
- _writeToStderr = 0;
+ if (!options.allowVfork) _writeToStderr = 0;
try {
#if __linux__
if (options.dieWithParent && prctl(PR_SET_PDEATHSIG, SIGKILL) ==
-1)