X-Git-Url: http://git.bitcoin.ninja/index.cgi?a=blobdiff_plain;f=lightning%2Fsrc%2Fchain%2Fchainmonitor.rs;h=234e60b4c5967d7335711cbed1fd20da73e3c245;hb=02b85fabcdeb4c2128ca86e15f653c44dbef5df2;hp=eb17b469a0365df2de4464ef313cc243441b6767;hpb=d70fdd3a5c7bb2f240ef9de0fa075494b3923fe5;p=rust-lightning diff --git a/lightning/src/chain/chainmonitor.rs b/lightning/src/chain/chainmonitor.rs index eb17b469..234e60b4 100644 --- a/lightning/src/chain/chainmonitor.rs +++ b/lightning/src/chain/chainmonitor.rs @@ -26,7 +26,7 @@ use bitcoin::blockdata::block::{Block, BlockHeader}; use chain; -use chain::Filter; +use chain::{Filter, WatchedOutput}; use chain::chaininterface::{BroadcasterInterface, FeeEstimator}; use chain::channelmonitor; use chain::channelmonitor::{ChannelMonitor, ChannelMonitorUpdate, ChannelMonitorUpdateErr, MonitorEvent, Persist}; @@ -87,9 +87,14 @@ where C::Target: chain::Filter, let mut txn_outputs = monitor.block_connected(header, txdata, height, &*self.broadcaster, &*self.fee_estimator, &*self.logger); if let Some(ref chain_source) = self.chain_source { + let block_hash = header.block_hash(); for (txid, outputs) in txn_outputs.drain(..) { for (idx, output) in outputs.iter() { - chain_source.register_output(&OutPoint { txid, index: *idx as u16 }, &output.script_pubkey); + chain_source.register_output(WatchedOutput { + block_hash: Some(block_hash), + outpoint: OutPoint { txid, index: *idx as u16 }, + script_pubkey: output.script_pubkey.clone(), + }); } } }