Skip to content

Commit 10d48e8

Browse files
committed
f use trait
1 parent 1822737 commit 10d48e8

File tree

1 file changed

+43
-54
lines changed

1 file changed

+43
-54
lines changed

lightning/src/ln/channelmanager.rs

Lines changed: 43 additions & 54 deletions
Original file line numberDiff line numberDiff line change
@@ -1044,23 +1044,12 @@ struct PersistenceNotifierGuard<'a, F: Fn() -> NotifyOption> {
10441044
}
10451045

10461046
impl<'a> PersistenceNotifierGuard<'a, fn() -> NotifyOption> { // We don't care what the concrete F is here, it's unused
1047-
fn notify_on_drop<M: Deref, T: Deref, ES: Deref, NS: Deref, SP: Deref, F: Deref, R: Deref, L: Deref>
1048-
(cm: &'a ChannelManager<M, T, ES, NS, SP, F, R, L>) -> PersistenceNotifierGuard<'a, impl Fn() -> NotifyOption>
1049-
where
1050-
M::Target: chain::Watch<<SP::Target as SignerProvider>::Signer>,
1051-
T::Target: BroadcasterInterface,
1052-
ES::Target: EntropySource,
1053-
NS::Target: NodeSigner,
1054-
SP::Target: SignerProvider,
1055-
F::Target: FeeEstimator,
1056-
R::Target: Router,
1057-
L::Target: Logger,
1058-
{
1059-
let read_guard = cm.total_consistency_lock.read().unwrap();
1060-
cm.process_background_events();
1047+
fn notify_on_drop<C: AChannelManager>(cm: &'a C) -> PersistenceNotifierGuard<'a, impl Fn() -> NotifyOption> {
1048+
let read_guard = cm.get_cm().total_consistency_lock.read().unwrap();
1049+
cm.get_cm().process_background_events();
10611050

10621051
PersistenceNotifierGuard {
1063-
persistence_notifier: &cm.persistence_notifier,
1052+
persistence_notifier: &cm.get_cm().persistence_notifier,
10641053
should_persist: || -> NotifyOption { NotifyOption::DoPersist },
10651054
_read_guard: read_guard,
10661055
}
@@ -1964,7 +1953,7 @@ where
19641953
return Err(APIError::APIMisuseError { err: format!("Channel value must be at least 1000 satoshis. It was {}", channel_value_satoshis) });
19651954
}
19661955

1967-
let _persistence_guard = PersistenceNotifierGuard::notify_on_drop(&self);
1956+
let _persistence_guard = PersistenceNotifierGuard::notify_on_drop(self);
19681957
// We want to make sure the lock is actually acquired by PersistenceNotifierGuard.
19691958
debug_assert!(&self.total_consistency_lock.try_write().is_err());
19701959

@@ -2118,7 +2107,7 @@ where
21182107
}
21192108

21202109
fn close_channel_internal(&self, channel_id: &[u8; 32], counterparty_node_id: &PublicKey, target_feerate_sats_per_1000_weight: Option<u32>, override_shutdown_script: Option<ShutdownScript>) -> Result<(), APIError> {
2121-
let _persistence_guard = PersistenceNotifierGuard::notify_on_drop(&self);
2110+
let _persistence_guard = PersistenceNotifierGuard::notify_on_drop(self);
21222111

21232112
let mut failed_htlcs: Vec<(HTLCSource, PaymentHash)>;
21242113
let result: Result<(), _> = loop {
@@ -2291,7 +2280,7 @@ where
22912280
}
22922281

22932282
fn force_close_sending_error(&self, channel_id: &[u8; 32], counterparty_node_id: &PublicKey, broadcast: bool) -> Result<(), APIError> {
2294-
let _persistence_guard = PersistenceNotifierGuard::notify_on_drop(&self);
2283+
let _persistence_guard = PersistenceNotifierGuard::notify_on_drop(self);
22952284
match self.force_close_channel_with_peer(channel_id, counterparty_node_id, None, broadcast) {
22962285
Ok(counterparty_node_id) => {
22972286
let per_peer_state = self.per_peer_state.read().unwrap();
@@ -2901,7 +2890,7 @@ where
29012890
/// [`ChannelMonitorUpdateStatus::InProgress`]: crate::chain::ChannelMonitorUpdateStatus::InProgress
29022891
pub fn send_payment_with_route(&self, route: &Route, payment_hash: PaymentHash, recipient_onion: RecipientOnionFields, payment_id: PaymentId) -> Result<(), PaymentSendFailure> {
29032892
let best_block_height = self.best_block.read().unwrap().height();
2904-
let _persistence_guard = PersistenceNotifierGuard::notify_on_drop(&self);
2893+
let _persistence_guard = PersistenceNotifierGuard::notify_on_drop(self);
29052894
self.pending_outbound_payments
29062895
.send_payment_with_route(route, payment_hash, recipient_onion, payment_id, &self.entropy_source, &self.node_signer, best_block_height,
29072896
|path, payment_hash, recipient_onion, total_value, cur_height, payment_id, keysend_preimage, session_priv|
@@ -2912,7 +2901,7 @@ where
29122901
/// `route_params` and retry failed payment paths based on `retry_strategy`.
29132902
pub fn send_payment(&self, payment_hash: PaymentHash, recipient_onion: RecipientOnionFields, payment_id: PaymentId, route_params: RouteParameters, retry_strategy: Retry) -> Result<(), RetryableSendFailure> {
29142903
let best_block_height = self.best_block.read().unwrap().height();
2915-
let _persistence_guard = PersistenceNotifierGuard::notify_on_drop(&self);
2904+
let _persistence_guard = PersistenceNotifierGuard::notify_on_drop(self);
29162905
self.pending_outbound_payments
29172906
.send_payment(payment_hash, recipient_onion, payment_id, retry_strategy, route_params,
29182907
&self.router, self.list_usable_channels(), || self.compute_inflight_htlcs(),
@@ -2925,7 +2914,7 @@ where
29252914
#[cfg(test)]
29262915
pub(super) fn test_send_payment_internal(&self, route: &Route, payment_hash: PaymentHash, recipient_onion: RecipientOnionFields, keysend_preimage: Option<PaymentPreimage>, payment_id: PaymentId, recv_value_msat: Option<u64>, onion_session_privs: Vec<[u8; 32]>) -> Result<(), PaymentSendFailure> {
29272916
let best_block_height = self.best_block.read().unwrap().height();
2928-
let _persistence_guard = PersistenceNotifierGuard::notify_on_drop(&self);
2917+
let _persistence_guard = PersistenceNotifierGuard::notify_on_drop(self);
29292918
self.pending_outbound_payments.test_send_payment_internal(route, payment_hash, recipient_onion, keysend_preimage, payment_id, recv_value_msat, onion_session_privs, &self.node_signer, best_block_height,
29302919
|path, payment_hash, recipient_onion, total_value, cur_height, payment_id, keysend_preimage, session_priv|
29312920
self.send_payment_along_path(path, payment_hash, recipient_onion, total_value, cur_height, payment_id, keysend_preimage, session_priv))
@@ -2960,7 +2949,7 @@ where
29602949
/// [`Event::PaymentFailed`]: events::Event::PaymentFailed
29612950
/// [`Event::PaymentSent`]: events::Event::PaymentSent
29622951
pub fn abandon_payment(&self, payment_id: PaymentId) {
2963-
let _persistence_guard = PersistenceNotifierGuard::notify_on_drop(&self);
2952+
let _persistence_guard = PersistenceNotifierGuard::notify_on_drop(self);
29642953
self.pending_outbound_payments.abandon_payment(payment_id, PaymentFailureReason::UserAbandoned, &self.pending_events);
29652954
}
29662955

@@ -2981,7 +2970,7 @@ where
29812970
/// [`send_payment`]: Self::send_payment
29822971
pub fn send_spontaneous_payment(&self, route: &Route, payment_preimage: Option<PaymentPreimage>, recipient_onion: RecipientOnionFields, payment_id: PaymentId) -> Result<PaymentHash, PaymentSendFailure> {
29832972
let best_block_height = self.best_block.read().unwrap().height();
2984-
let _persistence_guard = PersistenceNotifierGuard::notify_on_drop(&self);
2973+
let _persistence_guard = PersistenceNotifierGuard::notify_on_drop(self);
29852974
self.pending_outbound_payments.send_spontaneous_payment_with_route(
29862975
route, payment_preimage, recipient_onion, payment_id, &self.entropy_source,
29872976
&self.node_signer, best_block_height,
@@ -2998,7 +2987,7 @@ where
29982987
/// [`PaymentParameters::for_keysend`]: crate::routing::router::PaymentParameters::for_keysend
29992988
pub fn send_spontaneous_payment_with_retry(&self, payment_preimage: Option<PaymentPreimage>, recipient_onion: RecipientOnionFields, payment_id: PaymentId, route_params: RouteParameters, retry_strategy: Retry) -> Result<PaymentHash, RetryableSendFailure> {
30002989
let best_block_height = self.best_block.read().unwrap().height();
3001-
let _persistence_guard = PersistenceNotifierGuard::notify_on_drop(&self);
2990+
let _persistence_guard = PersistenceNotifierGuard::notify_on_drop(self);
30022991
self.pending_outbound_payments.send_spontaneous_payment(payment_preimage, recipient_onion,
30032992
payment_id, retry_strategy, route_params, &self.router, self.list_usable_channels(),
30042993
|| self.compute_inflight_htlcs(), &self.entropy_source, &self.node_signer, best_block_height,
@@ -3012,7 +3001,7 @@ where
30123001
/// us to easily discern them from real payments.
30133002
pub fn send_probe(&self, path: Path) -> Result<(PaymentHash, PaymentId), PaymentSendFailure> {
30143003
let best_block_height = self.best_block.read().unwrap().height();
3015-
let _persistence_guard = PersistenceNotifierGuard::notify_on_drop(&self);
3004+
let _persistence_guard = PersistenceNotifierGuard::notify_on_drop(self);
30163005
self.pending_outbound_payments.send_probe(path, self.probing_cookie_secret, &self.entropy_source, &self.node_signer, best_block_height,
30173006
|path, payment_hash, recipient_onion, total_value, cur_height, payment_id, keysend_preimage, session_priv|
30183007
self.send_payment_along_path(path, payment_hash, recipient_onion, total_value, cur_height, payment_id, keysend_preimage, session_priv))
@@ -3123,7 +3112,7 @@ where
31233112
/// [`Event::FundingGenerationReady`]: crate::events::Event::FundingGenerationReady
31243113
/// [`Event::ChannelClosed`]: crate::events::Event::ChannelClosed
31253114
pub fn funding_transaction_generated(&self, temporary_channel_id: &[u8; 32], counterparty_node_id: &PublicKey, funding_transaction: Transaction) -> Result<(), APIError> {
3126-
let _persistence_guard = PersistenceNotifierGuard::notify_on_drop(&self);
3115+
let _persistence_guard = PersistenceNotifierGuard::notify_on_drop(self);
31273116

31283117
for inp in funding_transaction.input.iter() {
31293118
if inp.witness.is_empty() {
@@ -3203,7 +3192,7 @@ where
32033192
});
32043193
}
32053194

3206-
let _persistence_guard = PersistenceNotifierGuard::notify_on_drop(&self);
3195+
let _persistence_guard = PersistenceNotifierGuard::notify_on_drop(self);
32073196
let per_peer_state = self.per_peer_state.read().unwrap();
32083197
let peer_state_mutex = per_peer_state.get(counterparty_node_id)
32093198
.ok_or_else(|| APIError::ChannelUnavailable { err: format!("Can't find a peer matching the passed counterparty node_id {}", counterparty_node_id) })?;
@@ -3256,7 +3245,7 @@ where
32563245
// TODO: when we move to deciding the best outbound channel at forward time, only take
32573246
// `next_node_id` and not `next_hop_channel_id`
32583247
pub fn forward_intercepted_htlc(&self, intercept_id: InterceptId, next_hop_channel_id: &[u8; 32], next_node_id: PublicKey, amt_to_forward_msat: u64) -> Result<(), APIError> {
3259-
let _persistence_guard = PersistenceNotifierGuard::notify_on_drop(&self);
3248+
let _persistence_guard = PersistenceNotifierGuard::notify_on_drop(self);
32603249

32613250
let next_hop_scid = {
32623251
let peer_state_lock = self.per_peer_state.read().unwrap();
@@ -3312,7 +3301,7 @@ where
33123301
///
33133302
/// [`HTLCIntercepted`]: events::Event::HTLCIntercepted
33143303
pub fn fail_intercepted_htlc(&self, intercept_id: InterceptId) -> Result<(), APIError> {
3315-
let _persistence_guard = PersistenceNotifierGuard::notify_on_drop(&self);
3304+
let _persistence_guard = PersistenceNotifierGuard::notify_on_drop(self);
33163305

33173306
let payment = self.pending_intercepted_htlcs.lock().unwrap().remove(&intercept_id)
33183307
.ok_or_else(|| APIError::APIMisuseError {
@@ -3341,7 +3330,7 @@ where
33413330
/// Should only really ever be called in response to a PendingHTLCsForwardable event.
33423331
/// Will likely generate further events.
33433332
pub fn process_pending_htlc_forwards(&self) {
3344-
let _persistence_guard = PersistenceNotifierGuard::notify_on_drop(&self);
3333+
let _persistence_guard = PersistenceNotifierGuard::notify_on_drop(self);
33453334

33463335
let mut new_events = VecDeque::new();
33473336
let mut failed_forwards = Vec::new();
@@ -4105,7 +4094,7 @@ where
41054094
///
41064095
/// See [`FailureCode`] for valid failure codes.
41074096
pub fn fail_htlc_backwards_with_reason(&self, payment_hash: &PaymentHash, failure_code: FailureCode) {
4108-
let _persistence_guard = PersistenceNotifierGuard::notify_on_drop(&self);
4097+
let _persistence_guard = PersistenceNotifierGuard::notify_on_drop(self);
41094098

41104099
let removed_source = self.claimable_payments.lock().unwrap().claimable_payments.remove(payment_hash);
41114100
if let Some(payment) = removed_source {
@@ -4282,7 +4271,7 @@ where
42824271
pub fn claim_funds(&self, payment_preimage: PaymentPreimage) {
42834272
let payment_hash = PaymentHash(Sha256::hash(&payment_preimage.0).into_inner());
42844273

4285-
let _persistence_guard = PersistenceNotifierGuard::notify_on_drop(&self);
4274+
let _persistence_guard = PersistenceNotifierGuard::notify_on_drop(self);
42864275

42874276
let mut sources = {
42884277
let mut claimable_payments = self.claimable_payments.lock().unwrap();
@@ -4683,7 +4672,7 @@ where
46834672
}
46844673

46854674
fn do_accept_inbound_channel(&self, temporary_channel_id: &[u8; 32], counterparty_node_id: &PublicKey, accept_0conf: bool, user_channel_id: u128) -> Result<(), APIError> {
4686-
let _persistence_guard = PersistenceNotifierGuard::notify_on_drop(&self);
4675+
let _persistence_guard = PersistenceNotifierGuard::notify_on_drop(self);
46874676

46884677
let peers_without_funded_channels = self.peers_without_funded_channels(|peer| !peer.channel_by_id.is_empty());
46894678
let per_peer_state = self.per_peer_state.read().unwrap();
@@ -5630,7 +5619,7 @@ where
56305619
/// update events as a separate process method here.
56315620
#[cfg(fuzzing)]
56325621
pub fn process_monitor_events(&self) {
5633-
let _persistence_guard = PersistenceNotifierGuard::notify_on_drop(&self);
5622+
let _persistence_guard = PersistenceNotifierGuard::notify_on_drop(self);
56345623
self.process_pending_monitor_events();
56355624
}
56365625

@@ -5786,7 +5775,7 @@ where
57865775

57875776
let payment_secret = PaymentSecret(self.entropy_source.get_secure_random_bytes());
57885777

5789-
let _persistence_guard = PersistenceNotifierGuard::notify_on_drop(&self);
5778+
let _persistence_guard = PersistenceNotifierGuard::notify_on_drop(self);
57905779
let mut payment_secrets = self.pending_inbound_payments.lock().unwrap();
57915780
match payment_secrets.entry(payment_hash) {
57925781
hash_map::Entry::Vacant(e) => {
@@ -6569,7 +6558,7 @@ where
65696558
L::Target: Logger,
65706559
{
65716560
fn handle_open_channel(&self, counterparty_node_id: &PublicKey, msg: &msgs::OpenChannel) {
6572-
let _persistence_guard = PersistenceNotifierGuard::notify_on_drop(&self);
6561+
let _persistence_guard = PersistenceNotifierGuard::notify_on_drop(self);
65736562
let _ = handle_error!(self, self.internal_open_channel(counterparty_node_id, msg), *counterparty_node_id);
65746563
}
65756564

@@ -6580,7 +6569,7 @@ where
65806569
}
65816570

65826571
fn handle_accept_channel(&self, counterparty_node_id: &PublicKey, msg: &msgs::AcceptChannel) {
6583-
let _persistence_guard = PersistenceNotifierGuard::notify_on_drop(&self);
6572+
let _persistence_guard = PersistenceNotifierGuard::notify_on_drop(self);
65846573
let _ = handle_error!(self, self.internal_accept_channel(counterparty_node_id, msg), *counterparty_node_id);
65856574
}
65866575

@@ -6591,67 +6580,67 @@ where
65916580
}
65926581

65936582
fn handle_funding_created(&self, counterparty_node_id: &PublicKey, msg: &msgs::FundingCreated) {
6594-
let _persistence_guard = PersistenceNotifierGuard::notify_on_drop(&self);
6583+
let _persistence_guard = PersistenceNotifierGuard::notify_on_drop(self);
65956584
let _ = handle_error!(self, self.internal_funding_created(counterparty_node_id, msg), *counterparty_node_id);
65966585
}
65976586

65986587
fn handle_funding_signed(&self, counterparty_node_id: &PublicKey, msg: &msgs::FundingSigned) {
6599-
let _persistence_guard = PersistenceNotifierGuard::notify_on_drop(&self);
6588+
let _persistence_guard = PersistenceNotifierGuard::notify_on_drop(self);
66006589
let _ = handle_error!(self, self.internal_funding_signed(counterparty_node_id, msg), *counterparty_node_id);
66016590
}
66026591

66036592
fn handle_channel_ready(&self, counterparty_node_id: &PublicKey, msg: &msgs::ChannelReady) {
6604-
let _persistence_guard = PersistenceNotifierGuard::notify_on_drop(&self);
6593+
let _persistence_guard = PersistenceNotifierGuard::notify_on_drop(self);
66056594
let _ = handle_error!(self, self.internal_channel_ready(counterparty_node_id, msg), *counterparty_node_id);
66066595
}
66076596

66086597
fn handle_shutdown(&self, counterparty_node_id: &PublicKey, msg: &msgs::Shutdown) {
6609-
let _persistence_guard = PersistenceNotifierGuard::notify_on_drop(&self);
6598+
let _persistence_guard = PersistenceNotifierGuard::notify_on_drop(self);
66106599
let _ = handle_error!(self, self.internal_shutdown(counterparty_node_id, msg), *counterparty_node_id);
66116600
}
66126601

66136602
fn handle_closing_signed(&self, counterparty_node_id: &PublicKey, msg: &msgs::ClosingSigned) {
6614-
let _persistence_guard = PersistenceNotifierGuard::notify_on_drop(&self);
6603+
let _persistence_guard = PersistenceNotifierGuard::notify_on_drop(self);
66156604
let _ = handle_error!(self, self.internal_closing_signed(counterparty_node_id, msg), *counterparty_node_id);
66166605
}
66176606

66186607
fn handle_update_add_htlc(&self, counterparty_node_id: &PublicKey, msg: &msgs::UpdateAddHTLC) {
6619-
let _persistence_guard = PersistenceNotifierGuard::notify_on_drop(&self);
6608+
let _persistence_guard = PersistenceNotifierGuard::notify_on_drop(self);
66206609
let _ = handle_error!(self, self.internal_update_add_htlc(counterparty_node_id, msg), *counterparty_node_id);
66216610
}
66226611

66236612
fn handle_update_fulfill_htlc(&self, counterparty_node_id: &PublicKey, msg: &msgs::UpdateFulfillHTLC) {
6624-
let _persistence_guard = PersistenceNotifierGuard::notify_on_drop(&self);
6613+
let _persistence_guard = PersistenceNotifierGuard::notify_on_drop(self);
66256614
let _ = handle_error!(self, self.internal_update_fulfill_htlc(counterparty_node_id, msg), *counterparty_node_id);
66266615
}
66276616

66286617
fn handle_update_fail_htlc(&self, counterparty_node_id: &PublicKey, msg: &msgs::UpdateFailHTLC) {
6629-
let _persistence_guard = PersistenceNotifierGuard::notify_on_drop(&self);
6618+
let _persistence_guard = PersistenceNotifierGuard::notify_on_drop(self);
66306619
let _ = handle_error!(self, self.internal_update_fail_htlc(counterparty_node_id, msg), *counterparty_node_id);
66316620
}
66326621

66336622
fn handle_update_fail_malformed_htlc(&self, counterparty_node_id: &PublicKey, msg: &msgs::UpdateFailMalformedHTLC) {
6634-
let _persistence_guard = PersistenceNotifierGuard::notify_on_drop(&self);
6623+
let _persistence_guard = PersistenceNotifierGuard::notify_on_drop(self);
66356624
let _ = handle_error!(self, self.internal_update_fail_malformed_htlc(counterparty_node_id, msg), *counterparty_node_id);
66366625
}
66376626

66386627
fn handle_commitment_signed(&self, counterparty_node_id: &PublicKey, msg: &msgs::CommitmentSigned) {
6639-
let _persistence_guard = PersistenceNotifierGuard::notify_on_drop(&self);
6628+
let _persistence_guard = PersistenceNotifierGuard::notify_on_drop(self);
66406629
let _ = handle_error!(self, self.internal_commitment_signed(counterparty_node_id, msg), *counterparty_node_id);
66416630
}
66426631

66436632
fn handle_revoke_and_ack(&self, counterparty_node_id: &PublicKey, msg: &msgs::RevokeAndACK) {
6644-
let _persistence_guard = PersistenceNotifierGuard::notify_on_drop(&self);
6633+
let _persistence_guard = PersistenceNotifierGuard::notify_on_drop(self);
66456634
let _ = handle_error!(self, self.internal_revoke_and_ack(counterparty_node_id, msg), *counterparty_node_id);
66466635
}
66476636

66486637
fn handle_update_fee(&self, counterparty_node_id: &PublicKey, msg: &msgs::UpdateFee) {
6649-
let _persistence_guard = PersistenceNotifierGuard::notify_on_drop(&self);
6638+
let _persistence_guard = PersistenceNotifierGuard::notify_on_drop(self);
66506639
let _ = handle_error!(self, self.internal_update_fee(counterparty_node_id, msg), *counterparty_node_id);
66516640
}
66526641

66536642
fn handle_announcement_signatures(&self, counterparty_node_id: &PublicKey, msg: &msgs::AnnouncementSignatures) {
6654-
let _persistence_guard = PersistenceNotifierGuard::notify_on_drop(&self);
6643+
let _persistence_guard = PersistenceNotifierGuard::notify_on_drop(self);
66556644
let _ = handle_error!(self, self.internal_announcement_signatures(counterparty_node_id, msg), *counterparty_node_id);
66566645
}
66576646

@@ -6667,12 +6656,12 @@ where
66676656
}
66686657

66696658
fn handle_channel_reestablish(&self, counterparty_node_id: &PublicKey, msg: &msgs::ChannelReestablish) {
6670-
let _persistence_guard = PersistenceNotifierGuard::notify_on_drop(&self);
6659+
let _persistence_guard = PersistenceNotifierGuard::notify_on_drop(self);
66716660
let _ = handle_error!(self, self.internal_channel_reestablish(counterparty_node_id, msg), *counterparty_node_id);
66726661
}
66736662

66746663
fn peer_disconnected(&self, counterparty_node_id: &PublicKey) {
6675-
let _persistence_guard = PersistenceNotifierGuard::notify_on_drop(&self);
6664+
let _persistence_guard = PersistenceNotifierGuard::notify_on_drop(self);
66766665
let mut failed_channels = Vec::new();
66776666
let mut per_peer_state = self.per_peer_state.write().unwrap();
66786667
let remove_peer = {
@@ -6754,7 +6743,7 @@ where
67546743
return Err(());
67556744
}
67566745

6757-
let _persistence_guard = PersistenceNotifierGuard::notify_on_drop(&self);
6746+
let _persistence_guard = PersistenceNotifierGuard::notify_on_drop(self);
67586747

67596748
// If we have too many peers connected which don't have funded channels, disconnect the
67606749
// peer immediately (as long as it doesn't have funded channels). If we have a bunch of
@@ -6837,7 +6826,7 @@ where
68376826
}
68386827

68396828
fn handle_error(&self, counterparty_node_id: &PublicKey, msg: &msgs::ErrorMessage) {
6840-
let _persistence_guard = PersistenceNotifierGuard::notify_on_drop(&self);
6829+
let _persistence_guard = PersistenceNotifierGuard::notify_on_drop(self);
68416830

68426831
if msg.channel_id == [0; 32] {
68436832
let channel_ids: Vec<[u8; 32]> = {

0 commit comments

Comments
 (0)