mirror of
https://github.com/NixOS/nix
synced 2024-09-19 23:03:53 -04:00
refactor Worker::childStarted/Terminated: use switch
Preparation for RFC 92 dynamic derivations.
This commit is contained in:
parent
7ac39ff05c
commit
a5e51a9e02
|
@ -199,8 +199,16 @@ void Worker::childStarted(GoalPtr goal, const std::set<int> & fds,
|
||||||
child.respectTimeouts = respectTimeouts;
|
child.respectTimeouts = respectTimeouts;
|
||||||
children.emplace_back(child);
|
children.emplace_back(child);
|
||||||
if (inBuildSlot) {
|
if (inBuildSlot) {
|
||||||
if (goal->jobCategory() == JobCategory::Substitution) nrSubstitutions++;
|
switch (goal->jobCategory()) {
|
||||||
else nrLocalBuilds++;
|
case JobCategory::Substitution:
|
||||||
|
nrSubstitutions++;
|
||||||
|
break;
|
||||||
|
case JobCategory::Build:
|
||||||
|
nrLocalBuilds++;
|
||||||
|
break;
|
||||||
|
default:
|
||||||
|
abort();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -212,12 +220,17 @@ void Worker::childTerminated(Goal * goal, bool wakeSleepers)
|
||||||
if (i == children.end()) return;
|
if (i == children.end()) return;
|
||||||
|
|
||||||
if (i->inBuildSlot) {
|
if (i->inBuildSlot) {
|
||||||
if (goal->jobCategory() == JobCategory::Substitution) {
|
switch (goal->jobCategory()) {
|
||||||
|
case JobCategory::Substitution:
|
||||||
assert(nrSubstitutions > 0);
|
assert(nrSubstitutions > 0);
|
||||||
nrSubstitutions--;
|
nrSubstitutions--;
|
||||||
} else {
|
break;
|
||||||
|
case JobCategory::Build:
|
||||||
assert(nrLocalBuilds > 0);
|
assert(nrLocalBuilds > 0);
|
||||||
nrLocalBuilds--;
|
nrLocalBuilds--;
|
||||||
|
break;
|
||||||
|
default:
|
||||||
|
abort();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue