Skip to content

Commit 8e510cd

Browse files
fixup: avoid dup tx on transactions_confirmed and block_confirmed
1 parent 75af535 commit 8e510cd

File tree

1 file changed

+10
-5
lines changed

1 file changed

+10
-5
lines changed

lightning/src/chain/channelmonitor.rs

Lines changed: 10 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -5501,11 +5501,16 @@ impl<Signer: EcdsaChannelSigner> ChannelMonitorImpl<Signer> {
55015501
}
55025502

55035503
if should_broadcast_commitment {
5504-
let (mut claimables, mut outputs) =
5505-
self.generate_claimable_outpoints_and_watch_outputs(None);
5506-
if !self.is_manual_broadcast || self.funding_seen_onchain {
5507-
claimable_outpoints.append(&mut claimables);
5508-
watch_outputs.append(&mut outputs);
5504+
// Only generate claims immediately if block_confirmed
5505+
// won't also generate them to avoid duplicate registrations.
5506+
let should_broadcast = self.should_broadcast_holder_commitment_txn(logger);
5507+
if should_broadcast.is_none() {
5508+
let (mut claimables, mut outputs) =
5509+
self.generate_claimable_outpoints_and_watch_outputs(None);
5510+
if !self.is_manual_broadcast || self.funding_seen_onchain {
5511+
claimable_outpoints.append(&mut claimables);
5512+
watch_outputs.append(&mut outputs);
5513+
}
55095514
}
55105515
}
55115516

0 commit comments

Comments
 (0)