forked from lix-project/lix
Don't anticipate hash algo without hash in derivation for now
When we merge with master, the new lack of string types make this case impossible (after parsing). Later, when we actually implemenent CA-derivations, we'll change the types to allow that.
This commit is contained in:
parent
49308ef039
commit
3804e3df9b
|
@ -359,21 +359,9 @@ DerivationType BasicDerivation::type() const
|
||||||
outputs.begin()->second.hash != "")
|
outputs.begin()->second.hash != "")
|
||||||
{
|
{
|
||||||
return DerivationType::CAFixed;
|
return DerivationType::CAFixed;
|
||||||
|
} else {
|
||||||
|
return DerivationType::Regular;
|
||||||
}
|
}
|
||||||
|
|
||||||
auto const algo = outputs.begin()->second.hashAlgo;
|
|
||||||
if (algo != "") {
|
|
||||||
throw Error("Invalid mix of CA and regular outputs");
|
|
||||||
}
|
|
||||||
for (auto & i : outputs) {
|
|
||||||
if (i.second.hash != "") {
|
|
||||||
throw Error("Non-fixed-output derivation has fixed output");
|
|
||||||
}
|
|
||||||
if (i.second.hashAlgo != "") {
|
|
||||||
throw Error("Invalid mix of CA and regular outputs");
|
|
||||||
}
|
|
||||||
}
|
|
||||||
return DerivationType::Regular;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue