LocalStore::querySubstitutablePaths(): Implement using queryValidPaths()

This commit is contained in:
Eelco Dolstra 2016-10-07 19:46:56 +02:00
parent 844219f364
commit 0c85ef7090

View file

@ -783,15 +783,11 @@ PathSet LocalStore::querySubstitutablePaths(const PathSet & paths)
if (!settings.useSubstitutes) return PathSet(); if (!settings.useSubstitutes) return PathSet();
PathSet res; PathSet res;
for (auto & sub : getDefaultSubstituters()) { for (auto & sub : getDefaultSubstituters()) {
if (res.size() == paths.size()) break;
if (sub->storeDir != storeDir) continue; if (sub->storeDir != storeDir) continue;
if (!sub->wantMassQuery()) continue; if (!sub->wantMassQuery()) continue;
for (auto & path : paths) { for (auto path : sub->queryValidPaths(paths))
if (res.count(path)) continue; res.insert(path);
debug(format("checking substituter %s for path %s")
% sub->getUri() % path);
if (sub->isValidPath(path))
res.insert(path);
}
} }
return res; return res;
} }