diff options
author | eldritch horrors <pennae@lix.systems> | 2024-08-13 03:26:18 +0200 |
---|---|---|
committer | eldritch horrors <pennae@lix.systems> | 2024-08-19 09:13:44 +0000 |
commit | e513cd2bebe6c4ed012bd4d2e92650c67f0df4bf (patch) | |
tree | 42efd4be8d4876a22647105e05b0050df56c094f /src/libstore/build/local-derivation-goal.cc | |
parent | fb8eb539fca224803014d43c220abbd6e704a962 (diff) |
libstore: run childStarted as late as possible
otherwise we *technically* give away the output fds before we've read them.
Change-Id: I6ad0d6a1bb553ecfcdd7708f50d34142a425374d
Diffstat (limited to 'src/libstore/build/local-derivation-goal.cc')
-rw-r--r-- | src/libstore/build/local-derivation-goal.cc | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/src/libstore/build/local-derivation-goal.cc b/src/libstore/build/local-derivation-goal.cc index afb9524ef..25b520c05 100644 --- a/src/libstore/build/local-derivation-goal.cc +++ b/src/libstore/build/local-derivation-goal.cc @@ -726,7 +726,6 @@ void LocalDerivationGoal::startBuilder() /* parent */ pid.setSeparatePG(true); - worker.childStarted(shared_from_this(), {builderOutPTY.get()}, true); /* Check if setting up the build environment failed. */ std::vector<std::string> msgs; @@ -753,6 +752,8 @@ void LocalDerivationGoal::startBuilder() debug("sandbox setup: " + msg); msgs.push_back(std::move(msg)); } + + worker.childStarted(shared_from_this(), {builderOutPTY.get()}, true); } |