Avoid short circuiting in Worker::removeGoal

We have to call into both branches no matter what.
This commit is contained in:
John Ericson
2025-12-18 17:43:34 -05:00
parent 160822858a
commit d19bfb0045

View File

@@ -162,7 +162,9 @@ template<typename G>
static bool
removeGoal(std::shared_ptr<G> goal, typename DerivedPathMap<std::map<OutputsSpec, std::weak_ptr<G>>>::ChildNode & node)
{
return removeGoal(goal, node.value) || removeGoal(goal, node.childMap);
bool valueKeep = removeGoal(goal, node.value);
bool childMapKeep = removeGoal(goal, node.childMap);
return valueKeep || childMapKeep;
}
void Worker::removeGoal(GoalPtr goal)