about summary refs log tree commit diff
diff options
context:
space:
mode:
authorEelco Dolstra <edolstra@gmail.com>2016-11-14T14·00+0100
committerEelco Dolstra <edolstra@gmail.com>2016-11-14T14·00+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 61286ceac9e4..d488cda37ca2 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());