Skip to content

Commit 5800f86

Browse files
committed
Use optionally_notify in handle_splice_xxx (from review)
1 parent d4dfbde commit 5800f86

File tree

1 file changed

+20
-4
lines changed

1 file changed

+20
-4
lines changed

lightning/src/ln/channelmanager.rs

Lines changed: 20 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -11528,14 +11528,30 @@ where
1152811528

1152911529
#[cfg(splicing)]
1153011530
fn handle_splice_init(&self, counterparty_node_id: PublicKey, msg: &msgs::SpliceInit) {
11531-
let _persistence_guard = PersistenceNotifierGuard::notify_on_drop(self);
11532-
let _ = handle_error!(self, self.internal_splice_init(&counterparty_node_id, msg), counterparty_node_id);
11531+
let _persistence_guard = PersistenceNotifierGuard::optionally_notify(self, || {
11532+
let res = self.internal_splice_init(&counterparty_node_id, msg);
11533+
let persist = match &res {
11534+
Err(e) if e.closes_channel() => NotifyOption::DoPersist,
11535+
Err(_) => NotifyOption::SkipPersistHandleEvents,
11536+
Ok(()) => NotifyOption::SkipPersistNoEvents,
11537+
};
11538+
let _ = handle_error!(self, res, counterparty_node_id);
11539+
persist
11540+
});
1153311541
}
1153411542

1153511543
#[cfg(splicing)]
1153611544
fn handle_splice_ack(&self, counterparty_node_id: PublicKey, msg: &msgs::SpliceAck) {
11537-
let _persistence_guard = PersistenceNotifierGuard::notify_on_drop(self);
11538-
let _ = handle_error!(self, self.internal_splice_ack(&counterparty_node_id, msg), counterparty_node_id);
11545+
let _persistence_guard = PersistenceNotifierGuard::optionally_notify(self, || {
11546+
let res = self.internal_splice_ack(&counterparty_node_id, msg);
11547+
let persist = match &res {
11548+
Err(e) if e.closes_channel() => NotifyOption::DoPersist,
11549+
Err(_) => NotifyOption::SkipPersistHandleEvents,
11550+
Ok(()) => NotifyOption::SkipPersistNoEvents,
11551+
};
11552+
let _ = handle_error!(self, res, counterparty_node_id);
11553+
persist
11554+
});
1153911555
}
1154011556

1154111557
#[cfg(splicing)]

0 commit comments

Comments
 (0)