diff options
author | eldritch horrors <pennae@lix.systems> | 2024-03-04 06:32:46 +0100 |
---|---|---|
committer | eldritch horrors <pennae@lix.systems> | 2024-03-04 07:11:25 +0100 |
commit | d42cd24afe1ff417a33c769d666cb2af231ca40b (patch) | |
tree | 9febe77ffac51516fb9af1edd3af10ff501cbb2c /src/libstore/derivations.cc | |
parent | dd2926f7ea378833c02326b983baca8008ff27f0 (diff) |
Merge pull request #9563 from obsidiansystems/tryResolve-evalStore
Give `Derivation::tryResolve` an `evalStore` argument
(cherry picked from commit 36ca6adc60511dc822870f2df43c0a578e481925)
Change-Id: If76b185a01ffa982e4c49cf333a9b5fbf9edebfe
Diffstat (limited to 'src/libstore/derivations.cc')
-rw-r--r-- | src/libstore/derivations.cc | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/src/libstore/derivations.cc b/src/libstore/derivations.cc index 6678227fe..0013193dd 100644 --- a/src/libstore/derivations.cc +++ b/src/libstore/derivations.cc @@ -1003,13 +1003,13 @@ static void rewriteDerivation(Store & store, BasicDerivation & drv, const String } -std::optional<BasicDerivation> Derivation::tryResolve(Store & store) const +std::optional<BasicDerivation> Derivation::tryResolve(Store & store, Store * evalStore) const { std::map<std::pair<StorePath, std::string>, StorePath> inputDrvOutputs; std::function<void(const StorePath &, const DerivedPathMap<StringSet>::ChildNode &)> accum; accum = [&](auto & inputDrv, auto & node) { - for (auto & [outputName, outputPath] : store.queryPartialDerivationOutputMap(inputDrv)) { + for (auto & [outputName, outputPath] : store.queryPartialDerivationOutputMap(inputDrv, evalStore)) { if (outputPath) { inputDrvOutputs.insert_or_assign({inputDrv, outputName}, *outputPath); if (auto p = get(node.childMap, outputName)) |