Skip to content

Commit bec767b

Browse files
committed
Partially address review
- Use `check_closed_event` instead of clearing pending events - Write new property and read it from TLVs
1 parent c262be2 commit bec767b

File tree

2 files changed

+6
-5
lines changed

2 files changed

+6
-5
lines changed

lightning/src/chain/channelmonitor.rs

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -952,13 +952,13 @@ impl<Signer: Sign> Writeable for ChannelMonitorImpl<Signer> {
952952

953953
self.lockdown_from_offchain.write(writer)?;
954954
self.holder_tx_signed.write(writer)?;
955-
self.allow_automated_broadcast.write(writer)?;
956955

957956
write_tlv_fields!(writer, {
958957
(1, self.funding_spend_confirmed, option),
959958
(3, self.htlcs_resolved_on_chain, vec_type),
960959
(5, self.pending_monitor_events, vec_type),
961960
(7, self.funding_spend_seen, required),
961+
(9, self.allow_automated_broadcast, required)
962962
});
963963

964964
Ok(())
@@ -3354,7 +3354,6 @@ impl<'a, Signer: Sign, K: KeysInterface<Signer = Signer>> ReadableArgs<&'a K>
33543354

33553355
let lockdown_from_offchain = Readable::read(reader)?;
33563356
let holder_tx_signed = Readable::read(reader)?;
3357-
let allow_automated_broadcast: bool = Readable::read(reader)?;
33583357

33593358
if let Some(prev_commitment_tx) = prev_holder_signed_commitment_tx.as_mut() {
33603359
let prev_holder_value = onchain_tx_handler.get_prev_holder_commitment_to_self_value();
@@ -3376,11 +3375,14 @@ impl<'a, Signer: Sign, K: KeysInterface<Signer = Signer>> ReadableArgs<&'a K>
33763375
let mut funding_spend_confirmed = None;
33773376
let mut htlcs_resolved_on_chain = Some(Vec::new());
33783377
let mut funding_spend_seen = Some(false);
3378+
let mut allow_automated_broadcast = Some(true);
3379+
33793380
read_tlv_fields!(reader, {
33803381
(1, funding_spend_confirmed, option),
33813382
(3, htlcs_resolved_on_chain, vec_type),
33823383
(5, pending_monitor_events, vec_type),
33833384
(7, funding_spend_seen, option),
3385+
(9, allow_automated_broadcast, option)
33843386
});
33853387

33863388
let mut secp_ctx = Secp256k1::new();
@@ -3438,7 +3440,7 @@ impl<'a, Signer: Sign, K: KeysInterface<Signer = Signer>> ReadableArgs<&'a K>
34383440

34393441
secp_ctx,
34403442

3441-
allow_automated_broadcast,
3443+
allow_automated_broadcast: allow_automated_broadcast.unwrap(),
34423444
}),
34433445
}))
34443446
}

lightning/src/ln/functional_tests.rs

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4821,8 +4821,7 @@ fn test_deserialize_monitor_force_closed_without_broadcasting_txn() {
48214821

48224822
assert!(nodes[0].chain_monitor.watch_channel(deserialized_chanmon.get_funding_txo().0, deserialized_chanmon).is_ok());
48234823
check_added_monitors!(nodes[0], 1);
4824-
nodes[0].node.get_and_clear_pending_msg_events();
4825-
nodes[0].node.get_and_clear_pending_events();
4824+
check_closed_event!(nodes[0], 1, ClosureReason::HolderForceClosed);
48264825
}
48274826

48284827
macro_rules! check_spendable_outputs {

0 commit comments

Comments
 (0)