diff --git a/core/src/container.cpp b/core/src/container.cpp index e66a8ee9..59cb19d1 100644 --- a/core/src/container.cpp +++ b/core/src/container.cpp @@ -312,6 +312,10 @@ void SerialContainer::onNewSolution(const SolutionBase ¤t) const StagePrivate *creator = current.creator(); auto& children = impl->children(); + if (current.isFailure()) { + return; // don't consider failures + } + // find number of stages before and after creator stage size_t num_before = 0, num_after = 0; for (auto it = children.begin(), end = children.end(); it != end; ++it, ++num_before)