diff --git a/src/blockdata/transaction.rs b/src/blockdata/transaction.rs index ed99107f..b13ab9c0 100644 --- a/src/blockdata/transaction.rs +++ b/src/blockdata/transaction.rs @@ -473,8 +473,9 @@ impl Transaction { /// Verify that this transaction is able to spend its inputs /// The lambda spent should not return the same TxOut twice! pub fn verify_with_flags(&self, mut spent: S, flags: F) -> Result<(), script::Error> - where S: FnMut(&OutPoint) -> Option, F : Into + Copy { + where S: FnMut(&OutPoint) -> Option, F : Into { let tx = encode::serialize(&*self); + let flags: u32 = flags.into(); for (idx, input) in self.input.iter().enumerate() { if let Some(output) = spent(&input.previous_output) { output.script_pubkey.verify_with_flags(idx, output.value, tx.as_slice(), flags)?;