Fixed ex unit budget limit per redeemer

This commit is contained in:
alessandrokonrad
2022-12-27 22:25:32 +01:00
committed by Lucas
parent 2e17f18846
commit c6b5380c27
2 changed files with 13 additions and 26 deletions

View File

@@ -693,7 +693,7 @@ pub fn eval_redeemer(
redeemer: &Redeemer,
lookup_table: &DataLookupTable,
cost_mdls_opt: Option<&CostMdls>,
initial_budget: Option<&ExBudget>,
initial_budget: &ExBudget,
) -> Result<Redeemer, Error> {
let result = || {
let purpose = get_script_purpose(
@@ -733,7 +733,7 @@ pub fn eval_redeemer(
return Err(Error::V1CostModelNotFound);
};
program.eval_as(&Language::PlutusV1, costs, initial_budget)
program.eval_as(&Language::PlutusV1, costs, Some(initial_budget))
} else {
program.eval_v1()
};
@@ -743,11 +743,6 @@ pub fn eval_redeemer(
Err(err) => return Err(Error::Machine(err, budget, logs)),
}
let initial_budget = match initial_budget {
Some(b) => *b,
None => ExBudget::default(),
};
let new_redeemer = Redeemer {
tag: redeemer.tag.clone(),
index: redeemer.index,
@@ -784,7 +779,7 @@ pub fn eval_redeemer(
return Err(Error::V2CostModelNotFound);
};
program.eval_as(&Language::PlutusV2, costs, initial_budget)
program.eval_as(&Language::PlutusV2, costs, Some(initial_budget))
} else {
program.eval(ExBudget::default())
};
@@ -794,11 +789,6 @@ pub fn eval_redeemer(
Err(err) => return Err(Error::Machine(err, budget, logs)),
}
let initial_budget = match initial_budget {
Some(b) => *b,
None => ExBudget::default(),
};
let new_redeemer = Redeemer {
tag: redeemer.tag.clone(),
index: redeemer.index,
@@ -837,7 +827,7 @@ pub fn eval_redeemer(
return Err(Error::V1CostModelNotFound);
};
program.eval_as(&Language::PlutusV1, costs, initial_budget)
program.eval_as(&Language::PlutusV1, costs, Some(initial_budget))
} else {
program.eval_v1()
};
@@ -847,11 +837,6 @@ pub fn eval_redeemer(
Err(err) => return Err(Error::Machine(err, budget, logs)),
}
let initial_budget = match initial_budget {
Some(b) => *b,
None => ExBudget::default(),
};
let new_redeemer = Redeemer {
tag: redeemer.tag.clone(),
index: redeemer.index,
@@ -887,7 +872,7 @@ pub fn eval_redeemer(
return Err(Error::V2CostModelNotFound);
};
program.eval_as(&Language::PlutusV2, costs, initial_budget)
program.eval_as(&Language::PlutusV2, costs, Some(initial_budget))
} else {
program.eval(ExBudget::default())
};
@@ -897,11 +882,6 @@ pub fn eval_redeemer(
Err(err) => return Err(Error::Machine(err, budget, logs)),
}
let initial_budget = match initial_budget {
Some(b) => *b,
None => ExBudget::default(),
};
let new_redeemer = Redeemer {
tag: redeemer.tag.clone(),
index: redeemer.index,