diff --git a/src/libstore/build/derivation-goal.cc b/src/libstore/build/derivation-goal.cc index 30a247777..e8523569d 100644 --- a/src/libstore/build/derivation-goal.cc +++ b/src/libstore/build/derivation-goal.cc @@ -34,11 +34,10 @@ DerivationGoal::DerivationGoal( , drvPath(drvPath) , wantedOutput(wantedOutput) , outputHash{[&] { - if (auto * mOutputHash = get(staticOutputHashes(worker.evalStore, drv), wantedOutput)) + auto outputHashes = staticOutputHashes(worker.evalStore, drv); + if (auto * mOutputHash = get(outputHashes, wantedOutput)) return *mOutputHash; - else - throw Error( - "derivation '%s' does not have output '%s'", worker.store.printStorePath(drvPath), wantedOutput); + throw Error("derivation '%s' does not have output '%s'", worker.store.printStorePath(drvPath), wantedOutput); }()} , buildMode(buildMode) {