Skip to content

Commit bc224f8

Browse files
committed
f use trait
1 parent d8a45c9 commit bc224f8

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
@@ -1046,23 +1046,12 @@ struct PersistenceNotifierGuard<'a, F: Fn() -> NotifyOption> {
10461046
}
10471047

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

10641053
PersistenceNotifierGuard {
1065-
persistence_notifier: &cm.persistence_notifier,
1054+
persistence_notifier: &cm.get_cm().persistence_notifier,
10661055
should_persist: || -> NotifyOption { NotifyOption::DoPersist },
10671056
_read_guard: read_guard,
10681057
}
@@ -1966,7 +1955,7 @@ where
19661955
return Err(APIError::APIMisuseError { err: format!("Channel value must be at least 1000 satoshis. It was {}", channel_value_satoshis) });
19671956
}
19681957

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

@@ -2120,7 +2109,7 @@ where
21202109
}
21212110

21222111
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> {
2123-
let _persistence_guard = PersistenceNotifierGuard::notify_on_drop(&self);
2112+
let _persistence_guard = PersistenceNotifierGuard::notify_on_drop(self);
21242113

21252114
let mut failed_htlcs: Vec<(HTLCSource, PaymentHash)>;
21262115
let result: Result<(), _> = loop {
@@ -2293,7 +2282,7 @@ where
22932282
}
22942283

22952284
fn force_close_sending_error(&self, channel_id: &[u8; 32], counterparty_node_id: &PublicKey, broadcast: bool) -> Result<(), APIError> {
2296-
let _persistence_guard = PersistenceNotifierGuard::notify_on_drop(&self);
2285+
let _persistence_guard = PersistenceNotifierGuard::notify_on_drop(self);
22972286
match self.force_close_channel_with_peer(channel_id, counterparty_node_id, None, broadcast) {
22982287
Ok(counterparty_node_id) => {
22992288
let per_peer_state = self.per_peer_state.read().unwrap();
@@ -2903,7 +2892,7 @@ where
29032892
/// [`ChannelMonitorUpdateStatus::InProgress`]: crate::chain::ChannelMonitorUpdateStatus::InProgress
29042893
pub fn send_payment_with_route(&self, route: &Route, payment_hash: PaymentHash, recipient_onion: RecipientOnionFields, payment_id: PaymentId) -> Result<(), PaymentSendFailure> {
29052894
let best_block_height = self.best_block.read().unwrap().height();
2906-
let _persistence_guard = PersistenceNotifierGuard::notify_on_drop(&self);
2895+
let _persistence_guard = PersistenceNotifierGuard::notify_on_drop(self);
29072896
self.pending_outbound_payments
29082897
.send_payment_with_route(route, payment_hash, recipient_onion, payment_id, &self.entropy_source, &self.node_signer, best_block_height,
29092898
|path, payment_hash, recipient_onion, total_value, cur_height, payment_id, keysend_preimage, session_priv|
@@ -2914,7 +2903,7 @@ where
29142903
/// `route_params` and retry failed payment paths based on `retry_strategy`.
29152904
pub fn send_payment(&self, payment_hash: PaymentHash, recipient_onion: RecipientOnionFields, payment_id: PaymentId, route_params: RouteParameters, retry_strategy: Retry) -> Result<(), RetryableSendFailure> {
29162905
let best_block_height = self.best_block.read().unwrap().height();
2917-
let _persistence_guard = PersistenceNotifierGuard::notify_on_drop(&self);
2906+
let _persistence_guard = PersistenceNotifierGuard::notify_on_drop(self);
29182907
self.pending_outbound_payments
29192908
.send_payment(payment_hash, recipient_onion, payment_id, retry_strategy, route_params,
29202909
&self.router, self.list_usable_channels(), || self.compute_inflight_htlcs(),
@@ -2927,7 +2916,7 @@ where
29272916
#[cfg(test)]
29282917
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> {
29292918
let best_block_height = self.best_block.read().unwrap().height();
2930-
let _persistence_guard = PersistenceNotifierGuard::notify_on_drop(&self);
2919+
let _persistence_guard = PersistenceNotifierGuard::notify_on_drop(self);
29312920
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,
29322921
|path, payment_hash, recipient_onion, total_value, cur_height, payment_id, keysend_preimage, session_priv|
29332922
self.send_payment_along_path(path, payment_hash, recipient_onion, total_value, cur_height, payment_id, keysend_preimage, session_priv))
@@ -2962,7 +2951,7 @@ where
29622951
/// [`Event::PaymentFailed`]: events::Event::PaymentFailed
29632952
/// [`Event::PaymentSent`]: events::Event::PaymentSent
29642953
pub fn abandon_payment(&self, payment_id: PaymentId) {
2965-
let _persistence_guard = PersistenceNotifierGuard::notify_on_drop(&self);
2954+
let _persistence_guard = PersistenceNotifierGuard::notify_on_drop(self);
29662955
self.pending_outbound_payments.abandon_payment(payment_id, PaymentFailureReason::UserAbandoned, &self.pending_events);
29672956
}
29682957

@@ -2983,7 +2972,7 @@ where
29832972
/// [`send_payment`]: Self::send_payment
29842973
pub fn send_spontaneous_payment(&self, route: &Route, payment_preimage: Option<PaymentPreimage>, recipient_onion: RecipientOnionFields, payment_id: PaymentId) -> Result<PaymentHash, PaymentSendFailure> {
29852974
let best_block_height = self.best_block.read().unwrap().height();
2986-
let _persistence_guard = PersistenceNotifierGuard::notify_on_drop(&self);
2975+
let _persistence_guard = PersistenceNotifierGuard::notify_on_drop(self);
29872976
self.pending_outbound_payments.send_spontaneous_payment_with_route(
29882977
route, payment_preimage, recipient_onion, payment_id, &self.entropy_source,
29892978
&self.node_signer, best_block_height,
@@ -3000,7 +2989,7 @@ where
30002989
/// [`PaymentParameters::for_keysend`]: crate::routing::router::PaymentParameters::for_keysend
30012990
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> {
30022991
let best_block_height = self.best_block.read().unwrap().height();
3003-
let _persistence_guard = PersistenceNotifierGuard::notify_on_drop(&self);
2992+
let _persistence_guard = PersistenceNotifierGuard::notify_on_drop(self);
30042993
self.pending_outbound_payments.send_spontaneous_payment(payment_preimage, recipient_onion,
30052994
payment_id, retry_strategy, route_params, &self.router, self.list_usable_channels(),
30062995
|| self.compute_inflight_htlcs(), &self.entropy_source, &self.node_signer, best_block_height,
@@ -3014,7 +3003,7 @@ where
30143003
/// us to easily discern them from real payments.
30153004
pub fn send_probe(&self, path: Path) -> Result<(PaymentHash, PaymentId), PaymentSendFailure> {
30163005
let best_block_height = self.best_block.read().unwrap().height();
3017-
let _persistence_guard = PersistenceNotifierGuard::notify_on_drop(&self);
3006+
let _persistence_guard = PersistenceNotifierGuard::notify_on_drop(self);
30183007
self.pending_outbound_payments.send_probe(path, self.probing_cookie_secret, &self.entropy_source, &self.node_signer, best_block_height,
30193008
|path, payment_hash, recipient_onion, total_value, cur_height, payment_id, keysend_preimage, session_priv|
30203009
self.send_payment_along_path(path, payment_hash, recipient_onion, total_value, cur_height, payment_id, keysend_preimage, session_priv))
@@ -3125,7 +3114,7 @@ where
31253114
/// [`Event::FundingGenerationReady`]: crate::events::Event::FundingGenerationReady
31263115
/// [`Event::ChannelClosed`]: crate::events::Event::ChannelClosed
31273116
pub fn funding_transaction_generated(&self, temporary_channel_id: &[u8; 32], counterparty_node_id: &PublicKey, funding_transaction: Transaction) -> Result<(), APIError> {
3128-
let _persistence_guard = PersistenceNotifierGuard::notify_on_drop(&self);
3117+
let _persistence_guard = PersistenceNotifierGuard::notify_on_drop(self);
31293118

31303119
for inp in funding_transaction.input.iter() {
31313120
if inp.witness.is_empty() {
@@ -3205,7 +3194,7 @@ where
32053194
});
32063195
}
32073196

3208-
let _persistence_guard = PersistenceNotifierGuard::notify_on_drop(&self);
3197+
let _persistence_guard = PersistenceNotifierGuard::notify_on_drop(self);
32093198
let per_peer_state = self.per_peer_state.read().unwrap();
32103199
let peer_state_mutex = per_peer_state.get(counterparty_node_id)
32113200
.ok_or_else(|| APIError::ChannelUnavailable { err: format!("Can't find a peer matching the passed counterparty node_id {}", counterparty_node_id) })?;
@@ -3258,7 +3247,7 @@ where
32583247
// TODO: when we move to deciding the best outbound channel at forward time, only take
32593248
// `next_node_id` and not `next_hop_channel_id`
32603249
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> {
3261-
let _persistence_guard = PersistenceNotifierGuard::notify_on_drop(&self);
3250+
let _persistence_guard = PersistenceNotifierGuard::notify_on_drop(self);
32623251

32633252
let next_hop_scid = {
32643253
let peer_state_lock = self.per_peer_state.read().unwrap();
@@ -3314,7 +3303,7 @@ where
33143303
///
33153304
/// [`HTLCIntercepted`]: events::Event::HTLCIntercepted
33163305
pub fn fail_intercepted_htlc(&self, intercept_id: InterceptId) -> Result<(), APIError> {
3317-
let _persistence_guard = PersistenceNotifierGuard::notify_on_drop(&self);
3306+
let _persistence_guard = PersistenceNotifierGuard::notify_on_drop(self);
33183307

33193308
let payment = self.pending_intercepted_htlcs.lock().unwrap().remove(&intercept_id)
33203309
.ok_or_else(|| APIError::APIMisuseError {
@@ -3343,7 +3332,7 @@ where
33433332
/// Should only really ever be called in response to a PendingHTLCsForwardable event.
33443333
/// Will likely generate further events.
33453334
pub fn process_pending_htlc_forwards(&self) {
3346-
let _persistence_guard = PersistenceNotifierGuard::notify_on_drop(&self);
3335+
let _persistence_guard = PersistenceNotifierGuard::notify_on_drop(self);
33473336

33483337
let mut new_events = VecDeque::new();
33493338
let mut failed_forwards = Vec::new();
@@ -4111,7 +4100,7 @@ where
41114100
///
41124101
/// See [`FailureCode`] for valid failure codes.
41134102
pub fn fail_htlc_backwards_with_reason(&self, payment_hash: &PaymentHash, failure_code: FailureCode) {
4114-
let _persistence_guard = PersistenceNotifierGuard::notify_on_drop(&self);
4103+
let _persistence_guard = PersistenceNotifierGuard::notify_on_drop(self);
41154104

41164105
let removed_source = self.claimable_payments.lock().unwrap().claimable_payments.remove(payment_hash);
41174106
if let Some(payment) = removed_source {
@@ -4288,7 +4277,7 @@ where
42884277
pub fn claim_funds(&self, payment_preimage: PaymentPreimage) {
42894278
let payment_hash = PaymentHash(Sha256::hash(&payment_preimage.0).into_inner());
42904279

4291-
let _persistence_guard = PersistenceNotifierGuard::notify_on_drop(&self);
4280+
let _persistence_guard = PersistenceNotifierGuard::notify_on_drop(self);
42924281

42934282
let mut sources = {
42944283
let mut claimable_payments = self.claimable_payments.lock().unwrap();
@@ -4689,7 +4678,7 @@ where
46894678
}
46904679

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

46944683
let peers_without_funded_channels = self.peers_without_funded_channels(|peer| !peer.channel_by_id.is_empty());
46954684
let per_peer_state = self.per_peer_state.read().unwrap();
@@ -5636,7 +5625,7 @@ where
56365625
/// update events as a separate process method here.
56375626
#[cfg(fuzzing)]
56385627
pub fn process_monitor_events(&self) {
5639-
let _persistence_guard = PersistenceNotifierGuard::notify_on_drop(&self);
5628+
let _persistence_guard = PersistenceNotifierGuard::notify_on_drop(self);
56405629
self.process_pending_monitor_events();
56415630
}
56425631

@@ -5792,7 +5781,7 @@ where
57925781

57935782
let payment_secret = PaymentSecret(self.entropy_source.get_secure_random_bytes());
57945783

5795-
let _persistence_guard = PersistenceNotifierGuard::notify_on_drop(&self);
5784+
let _persistence_guard = PersistenceNotifierGuard::notify_on_drop(self);
57965785
let mut payment_secrets = self.pending_inbound_payments.lock().unwrap();
57975786
match payment_secrets.entry(payment_hash) {
57985787
hash_map::Entry::Vacant(e) => {
@@ -6575,7 +6564,7 @@ where
65756564
L::Target: Logger,
65766565
{
65776566
fn handle_open_channel(&self, counterparty_node_id: &PublicKey, msg: &msgs::OpenChannel) {
6578-
let _persistence_guard = PersistenceNotifierGuard::notify_on_drop(&self);
6567+
let _persistence_guard = PersistenceNotifierGuard::notify_on_drop(self);
65796568
let _ = handle_error!(self, self.internal_open_channel(counterparty_node_id, msg), *counterparty_node_id);
65806569
}
65816570

@@ -6586,7 +6575,7 @@ where
65866575
}
65876576

65886577
fn handle_accept_channel(&self, counterparty_node_id: &PublicKey, msg: &msgs::AcceptChannel) {
6589-
let _persistence_guard = PersistenceNotifierGuard::notify_on_drop(&self);
6578+
let _persistence_guard = PersistenceNotifierGuard::notify_on_drop(self);
65906579
let _ = handle_error!(self, self.internal_accept_channel(counterparty_node_id, msg), *counterparty_node_id);
65916580
}
65926581

@@ -6597,67 +6586,67 @@ where
65976586
}
65986587

65996588
fn handle_funding_created(&self, counterparty_node_id: &PublicKey, msg: &msgs::FundingCreated) {
6600-
let _persistence_guard = PersistenceNotifierGuard::notify_on_drop(&self);
6589+
let _persistence_guard = PersistenceNotifierGuard::notify_on_drop(self);
66016590
let _ = handle_error!(self, self.internal_funding_created(counterparty_node_id, msg), *counterparty_node_id);
66026591
}
66036592

66046593
fn handle_funding_signed(&self, counterparty_node_id: &PublicKey, msg: &msgs::FundingSigned) {
6605-
let _persistence_guard = PersistenceNotifierGuard::notify_on_drop(&self);
6594+
let _persistence_guard = PersistenceNotifierGuard::notify_on_drop(self);
66066595
let _ = handle_error!(self, self.internal_funding_signed(counterparty_node_id, msg), *counterparty_node_id);
66076596
}
66086597

66096598
fn handle_channel_ready(&self, counterparty_node_id: &PublicKey, msg: &msgs::ChannelReady) {
6610-
let _persistence_guard = PersistenceNotifierGuard::notify_on_drop(&self);
6599+
let _persistence_guard = PersistenceNotifierGuard::notify_on_drop(self);
66116600
let _ = handle_error!(self, self.internal_channel_ready(counterparty_node_id, msg), *counterparty_node_id);
66126601
}
66136602

66146603
fn handle_shutdown(&self, counterparty_node_id: &PublicKey, msg: &msgs::Shutdown) {
6615-
let _persistence_guard = PersistenceNotifierGuard::notify_on_drop(&self);
6604+
let _persistence_guard = PersistenceNotifierGuard::notify_on_drop(self);
66166605
let _ = handle_error!(self, self.internal_shutdown(counterparty_node_id, msg), *counterparty_node_id);
66176606
}
66186607

66196608
fn handle_closing_signed(&self, counterparty_node_id: &PublicKey, msg: &msgs::ClosingSigned) {
6620-
let _persistence_guard = PersistenceNotifierGuard::notify_on_drop(&self);
6609+
let _persistence_guard = PersistenceNotifierGuard::notify_on_drop(self);
66216610
let _ = handle_error!(self, self.internal_closing_signed(counterparty_node_id, msg), *counterparty_node_id);
66226611
}
66236612

66246613
fn handle_update_add_htlc(&self, counterparty_node_id: &PublicKey, msg: &msgs::UpdateAddHTLC) {
6625-
let _persistence_guard = PersistenceNotifierGuard::notify_on_drop(&self);
6614+
let _persistence_guard = PersistenceNotifierGuard::notify_on_drop(self);
66266615
let _ = handle_error!(self, self.internal_update_add_htlc(counterparty_node_id, msg), *counterparty_node_id);
66276616
}
66286617

66296618
fn handle_update_fulfill_htlc(&self, counterparty_node_id: &PublicKey, msg: &msgs::UpdateFulfillHTLC) {
6630-
let _persistence_guard = PersistenceNotifierGuard::notify_on_drop(&self);
6619+
let _persistence_guard = PersistenceNotifierGuard::notify_on_drop(self);
66316620
let _ = handle_error!(self, self.internal_update_fulfill_htlc(counterparty_node_id, msg), *counterparty_node_id);
66326621
}
66336622

66346623
fn handle_update_fail_htlc(&self, counterparty_node_id: &PublicKey, msg: &msgs::UpdateFailHTLC) {
6635-
let _persistence_guard = PersistenceNotifierGuard::notify_on_drop(&self);
6624+
let _persistence_guard = PersistenceNotifierGuard::notify_on_drop(self);
66366625
let _ = handle_error!(self, self.internal_update_fail_htlc(counterparty_node_id, msg), *counterparty_node_id);
66376626
}
66386627

66396628
fn handle_update_fail_malformed_htlc(&self, counterparty_node_id: &PublicKey, msg: &msgs::UpdateFailMalformedHTLC) {
6640-
let _persistence_guard = PersistenceNotifierGuard::notify_on_drop(&self);
6629+
let _persistence_guard = PersistenceNotifierGuard::notify_on_drop(self);
66416630
let _ = handle_error!(self, self.internal_update_fail_malformed_htlc(counterparty_node_id, msg), *counterparty_node_id);
66426631
}
66436632

66446633
fn handle_commitment_signed(&self, counterparty_node_id: &PublicKey, msg: &msgs::CommitmentSigned) {
6645-
let _persistence_guard = PersistenceNotifierGuard::notify_on_drop(&self);
6634+
let _persistence_guard = PersistenceNotifierGuard::notify_on_drop(self);
66466635
let _ = handle_error!(self, self.internal_commitment_signed(counterparty_node_id, msg), *counterparty_node_id);
66476636
}
66486637

66496638
fn handle_revoke_and_ack(&self, counterparty_node_id: &PublicKey, msg: &msgs::RevokeAndACK) {
6650-
let _persistence_guard = PersistenceNotifierGuard::notify_on_drop(&self);
6639+
let _persistence_guard = PersistenceNotifierGuard::notify_on_drop(self);
66516640
let _ = handle_error!(self, self.internal_revoke_and_ack(counterparty_node_id, msg), *counterparty_node_id);
66526641
}
66536642

66546643
fn handle_update_fee(&self, counterparty_node_id: &PublicKey, msg: &msgs::UpdateFee) {
6655-
let _persistence_guard = PersistenceNotifierGuard::notify_on_drop(&self);
6644+
let _persistence_guard = PersistenceNotifierGuard::notify_on_drop(self);
66566645
let _ = handle_error!(self, self.internal_update_fee(counterparty_node_id, msg), *counterparty_node_id);
66576646
}
66586647

66596648
fn handle_announcement_signatures(&self, counterparty_node_id: &PublicKey, msg: &msgs::AnnouncementSignatures) {
6660-
let _persistence_guard = PersistenceNotifierGuard::notify_on_drop(&self);
6649+
let _persistence_guard = PersistenceNotifierGuard::notify_on_drop(self);
66616650
let _ = handle_error!(self, self.internal_announcement_signatures(counterparty_node_id, msg), *counterparty_node_id);
66626651
}
66636652

@@ -6673,12 +6662,12 @@ where
66736662
}
66746663

66756664
fn handle_channel_reestablish(&self, counterparty_node_id: &PublicKey, msg: &msgs::ChannelReestablish) {
6676-
let _persistence_guard = PersistenceNotifierGuard::notify_on_drop(&self);
6665+
let _persistence_guard = PersistenceNotifierGuard::notify_on_drop(self);
66776666
let _ = handle_error!(self, self.internal_channel_reestablish(counterparty_node_id, msg), *counterparty_node_id);
66786667
}
66796668

66806669
fn peer_disconnected(&self, counterparty_node_id: &PublicKey) {
6681-
let _persistence_guard = PersistenceNotifierGuard::notify_on_drop(&self);
6670+
let _persistence_guard = PersistenceNotifierGuard::notify_on_drop(self);
66826671
let mut failed_channels = Vec::new();
66836672
let mut per_peer_state = self.per_peer_state.write().unwrap();
66846673
let remove_peer = {
@@ -6760,7 +6749,7 @@ where
67606749
return Err(());
67616750
}
67626751

6763-
let _persistence_guard = PersistenceNotifierGuard::notify_on_drop(&self);
6752+
let _persistence_guard = PersistenceNotifierGuard::notify_on_drop(self);
67646753

67656754
// If we have too many peers connected which don't have funded channels, disconnect the
67666755
// peer immediately (as long as it doesn't have funded channels). If we have a bunch of
@@ -6843,7 +6832,7 @@ where
68436832
}
68446833

68456834
fn handle_error(&self, counterparty_node_id: &PublicKey, msg: &msgs::ErrorMessage) {
6846-
let _persistence_guard = PersistenceNotifierGuard::notify_on_drop(&self);
6835+
let _persistence_guard = PersistenceNotifierGuard::notify_on_drop(self);
68476836

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

0 commit comments

Comments
 (0)