diff --git a/lightning/src/chain/chainmonitor.rs b/lightning/src/chain/chainmonitor.rs index 8644301ceb4..ca01e95c054 100644 --- a/lightning/src/chain/chainmonitor.rs +++ b/lightning/src/chain/chainmonitor.rs @@ -555,7 +555,7 @@ where channel_id_bytes[2], channel_id_bytes[3], ]); - channel_id_u32.wrapping_add(best_height.unwrap_or_default()) + best_height.map(|height| channel_id_u32.wrapping_add(height)) }; let partition_factor = if channel_count < 15 { @@ -565,7 +565,9 @@ where }; let has_pending_claims = monitor_state.monitor.has_pending_claims(); - if has_pending_claims || get_partition_key(channel_id) % partition_factor == 0 { + if has_pending_claims + || get_partition_key(channel_id).is_some_and(|key| key % partition_factor == 0) + { log_trace!(logger, "Syncing Channel Monitor"); // Even though we don't track monitor updates from chain-sync as pending, we still want // updates per-channel to be well-ordered so that users don't see a diff --git a/lightning/src/ln/funding.rs b/lightning/src/ln/funding.rs index c08a0a9f471..0a5fb647de1 100644 --- a/lightning/src/ln/funding.rs +++ b/lightning/src/ln/funding.rs @@ -386,7 +386,17 @@ impl FundingTemplate { return Err(FundingContributionError::InvalidSpliceValue); } let FundingTemplate { shared_input, min_rbf_feerate, .. } = self; - build_funding_contribution!(value_added, vec![], shared_input, min_rbf_feerate, min_feerate, max_feerate, false, wallet, await) + build_funding_contribution!( + value_added, + vec![], + shared_input, + min_rbf_feerate, + min_feerate, + max_feerate, + false, + wallet, + await + ) } /// Creates a [`FundingContribution`] for adding funds to a channel using `wallet` to perform @@ -426,7 +436,17 @@ impl FundingTemplate { return Err(FundingContributionError::InvalidSpliceValue); } let FundingTemplate { shared_input, min_rbf_feerate, .. } = self; - build_funding_contribution!(Amount::ZERO, outputs, shared_input, min_rbf_feerate, min_feerate, max_feerate, false, wallet, await) + build_funding_contribution!( + Amount::ZERO, + outputs, + shared_input, + min_rbf_feerate, + min_feerate, + max_feerate, + false, + wallet, + await + ) } /// Creates a [`FundingContribution`] for removing funds from a channel using `wallet` to @@ -467,7 +487,17 @@ impl FundingTemplate { return Err(FundingContributionError::InvalidSpliceValue); } let FundingTemplate { shared_input, min_rbf_feerate, .. } = self; - build_funding_contribution!(value_added, outputs, shared_input, min_rbf_feerate, min_feerate, max_feerate, false, wallet, await) + build_funding_contribution!( + value_added, + outputs, + shared_input, + min_rbf_feerate, + min_feerate, + max_feerate, + false, + wallet, + await + ) } /// Creates a [`FundingContribution`] for both adding and removing funds from a channel using @@ -550,10 +580,30 @@ impl FundingTemplate { return Ok(adjusted); } } - build_funding_contribution!(contribution.value_added, contribution.outputs, shared_input, min_rbf_feerate, rbf_feerate, max_feerate, true, wallet, await) + build_funding_contribution!( + contribution.value_added, + contribution.outputs, + shared_input, + min_rbf_feerate, + rbf_feerate, + max_feerate, + true, + wallet, + await + ) }, None => { - build_funding_contribution!(Amount::ZERO, vec![], shared_input, min_rbf_feerate, rbf_feerate, max_feerate, true, wallet, await) + build_funding_contribution!( + Amount::ZERO, + vec![], + shared_input, + min_rbf_feerate, + rbf_feerate, + max_feerate, + true, + wallet, + await + ) }, } }