queryMissing(): Handle partially valid derivations

This commit is contained in:
Eelco Dolstra 2012-11-26 18:25:12 +01:00
parent 08964d7328
commit 5943f41b8b

View file

@ -126,11 +126,12 @@ void queryMissing(StoreAPI & store, const PathSet & targets,
if (settings.useSubstitutes) {
foreach (DerivationOutputs::iterator, j, drv.outputs) {
if (!wantOutput(j->first, i2.second)) continue;
if (!store.isValidPath(j->second.path) &&
infos.find(j->second.path) == infos.end())
mustBuild = true;
else
outputs.insert(j->second.path);
if (!store.isValidPath(j->second.path)) {
if (infos.find(j->second.path) == infos.end())
mustBuild = true;
else
outputs.insert(j->second.path);
}
}
} else
mustBuild = true;