mirror of
https://github.com/hinto-janai/cuprate.git
synced 2024-12-22 19:49:33 +00:00
consensus: misc fixes (#276)
Some checks failed
CI / fmt (push) Has been cancelled
CI / typo (push) Has been cancelled
CI / ci (macos-latest, stable, bash) (push) Has been cancelled
CI / ci (ubuntu-latest, stable, bash) (push) Has been cancelled
CI / ci (windows-latest, stable-x86_64-pc-windows-gnu, msys2 {0}) (push) Has been cancelled
Doc / build (push) Has been cancelled
Doc / deploy (push) Has been cancelled
Some checks failed
CI / fmt (push) Has been cancelled
CI / typo (push) Has been cancelled
CI / ci (macos-latest, stable, bash) (push) Has been cancelled
CI / ci (ubuntu-latest, stable, bash) (push) Has been cancelled
CI / ci (windows-latest, stable-x86_64-pc-windows-gnu, msys2 {0}) (push) Has been cancelled
Doc / build (push) Has been cancelled
Doc / deploy (push) Has been cancelled
* fix decoy checks + fee calculation * fmt
This commit is contained in:
parent
49d1344aa1
commit
90027143f0
2 changed files with 7 additions and 1 deletions
|
@ -393,6 +393,11 @@ async fn verify_transactions_decoy_info<D>(
|
||||||
where
|
where
|
||||||
D: Database + Clone + Sync + Send + 'static,
|
D: Database + Clone + Sync + Send + 'static,
|
||||||
{
|
{
|
||||||
|
// Decoy info is not validated for V1 txs.
|
||||||
|
if hf == HardFork::V1 || txs.is_empty() {
|
||||||
|
return Ok(());
|
||||||
|
}
|
||||||
|
|
||||||
batch_get_decoy_info(&txs, hf, database)
|
batch_get_decoy_info(&txs, hf, database)
|
||||||
.await?
|
.await?
|
||||||
.try_for_each(|decoy_info| decoy_info.and_then(|di| Ok(check_decoy_info(&di, &hf)?)))?;
|
.try_for_each(|decoy_info| decoy_info.and_then(|di| Ok(check_decoy_info(&di, &hf)?)))?;
|
||||||
|
|
|
@ -78,7 +78,8 @@ pub fn tx_fee(tx: &Transaction) -> Result<u64, TransactionError> {
|
||||||
}
|
}
|
||||||
|
|
||||||
for output in &prefix.outputs {
|
for output in &prefix.outputs {
|
||||||
fee.checked_sub(output.amount.unwrap_or(0))
|
fee = fee
|
||||||
|
.checked_sub(output.amount.unwrap_or(0))
|
||||||
.ok_or(TransactionError::OutputsTooHigh)?;
|
.ok_or(TransactionError::OutputsTooHigh)?;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue