aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorEelco Dolstra <edolstra@gmail.com>2016-11-14 15:00:17 +0100
committerEelco Dolstra <edolstra@gmail.com>2016-11-14 15:00:17 +0100
commit10ae8fabf1e7e7bd8817b93560df7484c3bd18b8 (patch)
treeefc463f2b4e59ef15b844d812df9e0f1b94afb23
parentb77fb8acb57fee1b6decab818f0893832b4cf440 (diff)
buildPaths(): Handle ecIncompleteClosure
buildPaths() on a non-derivation would incorrectly not throw an error if the path didn't have a substitute.
-rw-r--r--src/libstore/build.cc2
1 files changed, 1 insertions, 1 deletions
diff --git a/src/libstore/build.cc b/src/libstore/build.cc
index 61286ceac..d488cda37 100644
--- a/src/libstore/build.cc
+++ b/src/libstore/build.cc
@@ -3783,7 +3783,7 @@ void LocalStore::buildPaths(const PathSet & drvPaths, BuildMode buildMode)
PathSet failed;
for (auto & i : goals)
- if (i->getExitCode() == Goal::ecFailed) {
+ if (i->getExitCode() != Goal::ecSuccess) {
DerivationGoal * i2 = dynamic_cast<DerivationGoal *>(i.get());
if (i2) failed.insert(i2->getDrvPath());
else failed.insert(dynamic_cast<SubstitutionGoal *>(i.get())->getStorePath());