From d3edba9370e886e420fc13e01951b0032594f66c Mon Sep 17 00:00:00 2001 From: Tamas Blummer Date: Fri, 23 Aug 2019 22:21:55 +0200 Subject: [PATCH] correct filter of input for coinbase --- src/coins.rs | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/src/coins.rs b/src/coins.rs index c4b2f0c..a9d86aa 100644 --- a/src/coins.rs +++ b/src/coins.rs @@ -67,7 +67,7 @@ impl Coins { pub fn process_unconfirmed_transaction(&mut self, master_account: &mut MasterAccount, transaction: &Transaction) -> bool { let mut scripts: HashMap = master_account.get_scripts().collect(); let mut modified = false; - for input in transaction.input.iter().skip(1) { + for input in transaction.input.iter() { modified |= self.remove_confirmed(&input.previous_output); } for (vout, output) in transaction.output.iter().enumerate() { @@ -133,8 +133,10 @@ impl Coins { let mut modified = false; for (txnr, tx) in block.txdata.iter().enumerate() { - for input in tx.input.iter().skip(1) { - modified |= self.remove_confirmed(&input.previous_output); + if txnr > 0 { // skip coinbase + for input in tx.input.iter() { + modified |= self.remove_confirmed(&input.previous_output); + } } for (vout, output) in tx.output.iter().enumerate() { let mut lookahead = Vec::new();