aboutsummaryrefslogtreecommitdiff
path: root/src/libstore/build/derivation-goal.hh
diff options
context:
space:
mode:
authorregnat <rg@regnat.ovh>2021-02-23 14:12:11 +0100
committerregnat <rg@regnat.ovh>2021-02-23 14:15:45 +0100
commitba1a256d0875592b28d902f3e40663b2adedfe9c (patch)
tree5c47978eb36b47ad9b87c4fc4680c2655859ea09 /src/libstore/build/derivation-goal.hh
parent35205e2e922952fc0654260a07fc3191c5afc2cc (diff)
Make `DerivationGoal::drv` a full Derivation
This field used to be a `BasicDerivation`, but this `BasicDerivation` was downcasted to a `Derivation` when needed (implicitely or not), so we might as well make it a full `Derivation` and upcast it when needed. This also allows getting rid of a weird duplication in the way we compute the static output hashes for the derivation. We had to do it differently and in a different place depending on whether the derivation was a full derivation or just a basic drv, but we can now do it unconditionally on the full derivation. Fix #4559
Diffstat (limited to 'src/libstore/build/derivation-goal.hh')
-rw-r--r--src/libstore/build/derivation-goal.hh2
1 files changed, 1 insertions, 1 deletions
diff --git a/src/libstore/build/derivation-goal.hh b/src/libstore/build/derivation-goal.hh
index 761100d3a..6dc164922 100644
--- a/src/libstore/build/derivation-goal.hh
+++ b/src/libstore/build/derivation-goal.hh
@@ -64,7 +64,7 @@ struct DerivationGoal : public Goal
bool retrySubstitution;
/* The derivation stored at drvPath. */
- std::unique_ptr<BasicDerivation> drv;
+ std::unique_ptr<Derivation> drv;
std::unique_ptr<ParsedDerivation> parsedDrv;