@@ -2317,7 +2317,7 @@ where
2317
2317
monitor_pending_failures: Vec<(HTLCSource, PaymentHash, HTLCFailReason)>,
2318
2318
monitor_pending_finalized_fulfills: Vec<HTLCSource>,
2319
2319
monitor_pending_update_adds: Vec<msgs::UpdateAddHTLC>,
2320
- monitor_pending_tx_signatures: Option<msgs::TxSignatures> ,
2320
+ monitor_pending_tx_signatures: bool ,
2321
2321
2322
2322
/// If we went to send a revoke_and_ack but our signer was unable to give us a signature,
2323
2323
/// we should retry at some point in the future when the signer indicates it may have a
@@ -3275,7 +3275,7 @@ where
3275
3275
monitor_pending_failures: Vec::new(),
3276
3276
monitor_pending_finalized_fulfills: Vec::new(),
3277
3277
monitor_pending_update_adds: Vec::new(),
3278
- monitor_pending_tx_signatures: None ,
3278
+ monitor_pending_tx_signatures: false ,
3279
3279
3280
3280
signer_pending_revoke_and_ack: false,
3281
3281
signer_pending_commitment_update: false,
@@ -3521,7 +3521,7 @@ where
3521
3521
monitor_pending_failures: Vec::new(),
3522
3522
monitor_pending_finalized_fulfills: Vec::new(),
3523
3523
monitor_pending_update_adds: Vec::new(),
3524
- monitor_pending_tx_signatures: None ,
3524
+ monitor_pending_tx_signatures: false ,
3525
3525
3526
3526
signer_pending_revoke_and_ack: false,
3527
3527
signer_pending_commitment_update: false,
@@ -6654,12 +6654,12 @@ where
6654
6654
6655
6655
self.monitor_updating_paused(false, false, false, Vec::new(), Vec::new(), Vec::new());
6656
6656
6657
- if let Some(tx_signatures ) = self.interactive_tx_signing_session.as_mut().and_then(
6657
+ if let Some(_ ) = self.interactive_tx_signing_session.as_mut().and_then(
6658
6658
|session| session.received_commitment_signed()
6659
6659
) {
6660
6660
// We're up first for submitting our tx_signatures, but our monitor has not persisted yet
6661
6661
// so they'll be sent as soon as that's done.
6662
- self.context.monitor_pending_tx_signatures = Some(tx_signatures) ;
6662
+ self.context.monitor_pending_tx_signatures = true ;
6663
6663
}
6664
6664
// Only build the unsigned transaction for signing if there are any holder inputs to actually sign
6665
6665
let funding_tx_opt = self.interactive_tx_signing_session.as_ref().and_then(|session|
@@ -6752,7 +6752,7 @@ where
6752
6752
.expect("Signing session must exist for negotiated pending splice")
6753
6753
.received_commitment_signed();
6754
6754
self.monitor_updating_paused(false, false, false, Vec::new(), Vec::new(), Vec::new());
6755
- self.context.monitor_pending_tx_signatures = tx_signatures;
6755
+ self.context.monitor_pending_tx_signatures = tx_signatures.is_some() ;
6756
6756
6757
6757
Ok(self.push_ret_blockable_mon_update(monitor_update))
6758
6758
}
@@ -7606,7 +7606,7 @@ where
7606
7606
{
7607
7607
if self.is_awaiting_initial_mon_persist() {
7608
7608
log_debug!(logger, "Not sending tx_signatures: a monitor update is in progress. Setting monitor_pending_tx_signatures.");
7609
- self.context.monitor_pending_tx_signatures = Some(holder_tx_signatures) ;
7609
+ self.context.monitor_pending_tx_signatures = true ;
7610
7610
return Ok(None);
7611
7611
}
7612
7612
return Ok(Some(holder_tx_signatures));
@@ -7685,7 +7685,7 @@ where
7685
7685
// and sets it as pending.
7686
7686
if holder_tx_signatures_opt.is_some() && self.is_awaiting_initial_mon_persist() {
7687
7687
log_debug!(logger, "Not sending tx_signatures: a monitor update is in progress. Setting monitor_pending_tx_signatures.");
7688
- self.context.monitor_pending_tx_signatures = holder_tx_signatures_opt ;
7688
+ self.context.monitor_pending_tx_signatures = true ;
7689
7689
return Ok((None, None));
7690
7690
}
7691
7691
@@ -7944,14 +7944,14 @@ where
7944
7944
// For channels established with V2 establishment we won't send a `tx_signatures` when we're in
7945
7945
// MonitorUpdateInProgress (and we assume the user will never directly broadcast the funding
7946
7946
// transaction and waits for us to do it).
7947
- let tx_signatures = self.context.monitor_pending_tx_signatures.take();
7948
- if tx_signatures.is_some() {
7947
+ let tx_signatures = if self.context.monitor_pending_tx_signatures {
7949
7948
if self.context.channel_state.is_their_tx_signatures_sent() {
7950
7949
self.context.channel_state = ChannelState::AwaitingChannelReady(AwaitingChannelReadyFlags::new());
7951
7950
} else {
7952
7951
self.context.channel_state.set_our_tx_signatures_ready();
7953
7952
}
7954
- }
7953
+ self.interactive_tx_signing_session.as_ref().and_then(|session| session.holder_tx_signatures().clone())
7954
+ } else { None };
7955
7955
7956
7956
if self.context.channel_state.is_peer_disconnected() {
7957
7957
self.context.monitor_pending_revoke_and_ack = false;
@@ -8453,11 +8453,9 @@ where
8453
8453
if self.context.channel_state.is_monitor_update_in_progress() {
8454
8454
// The `monitor_pending_tx_signatures` field should have already been set in `commitment_signed_initial_v2`
8455
8455
// if we were up first for signing and had a monitor update in progress, but check again just in case.
8456
- debug_assert!(self.context.monitor_pending_tx_signatures.is_some() , "monitor_pending_tx_signatures should already be set");
8456
+ debug_assert!(self.context.monitor_pending_tx_signatures, "monitor_pending_tx_signatures should already be set");
8457
8457
log_debug!(logger, "Not sending tx_signatures: a monitor update is in progress. Setting monitor_pending_tx_signatures.");
8458
- if self.context.monitor_pending_tx_signatures.is_none() {
8459
- self.context.monitor_pending_tx_signatures = session.holder_tx_signatures().clone();
8460
- }
8458
+ self.context.monitor_pending_tx_signatures = true;
8461
8459
None
8462
8460
} else {
8463
8461
// If `holder_tx_signatures` is `None` here, the `tx_signatures` message will be sent
@@ -13208,7 +13206,7 @@ where
13208
13206
monitor_pending_failures,
13209
13207
monitor_pending_finalized_fulfills: monitor_pending_finalized_fulfills.unwrap(),
13210
13208
monitor_pending_update_adds: monitor_pending_update_adds.unwrap_or_default(),
13211
- monitor_pending_tx_signatures: None ,
13209
+ monitor_pending_tx_signatures: false ,
13212
13210
13213
13211
signer_pending_revoke_and_ack: false,
13214
13212
signer_pending_commitment_update: false,
0 commit comments