diff --git a/base_layer/core/src/chain_storage/blockchain_database.rs b/base_layer/core/src/chain_storage/blockchain_database.rs index f4e7ceae32..27ee918545 100644 --- a/base_layer/core/src/chain_storage/blockchain_database.rs +++ b/base_layer/core/src/chain_storage/blockchain_database.rs @@ -1258,11 +1258,11 @@ pub fn calculate_mmr_roots(db: &T, block: &Block) -> Resul let mut output_mmr = MutableMmr::::new(outputs, deleted)?; let mut witness_mmr = MerkleMountainRange::::new(range_proofs); let mut input_mmr = MerkleMountainRange::::new(PrunedHashSet::default()); + let mut deleted_outputs = Vec::new(); for kernel in body.kernels().iter() { kernel_mmr.push(kernel.hash())?; } - let mut deleted_outputs = Vec::new(); for output in body.outputs().iter() { let output_hash = output.hash(); @@ -1308,7 +1308,7 @@ pub fn calculate_mmr_roots(db: &T, block: &Block) -> Resul }; deleted_outputs.push((index, output_hash)); } - for (index, output_hash) in deleted_outputs.into_iter() { + for (index, output_hash) in deleted_outputs { if !output_mmr.delete(index) { let num_leaves = u32::try_from(output_mmr.get_leaf_count()) .map_err(|_| ChainStorageError::CriticalError("UTXO MMR leaf count overflows u32".to_string()))?; @@ -1318,7 +1318,6 @@ pub fn calculate_mmr_roots(db: &T, block: &Block) -> Resul output_hash.to_hex() ))); } - return Err(ChainStorageError::InvalidOperation(format!( "Could not delete index {} from the output MMR ({} leaves)", index, num_leaves