Skip to content

Commit d36e63e

Browse files
committed
Add missing persistence guards during event freeing in ChannelManager
1 parent b79ced3 commit d36e63e

File tree

1 file changed

+4
-0
lines changed

1 file changed

+4
-0
lines changed

lightning/src/ln/channelmanager.rs

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3595,6 +3595,8 @@ impl<Signer: Sign, M: Deref, T: Deref, K: Deref, F: Deref, L: Deref> MessageSend
35953595
L::Target: Logger,
35963596
{
35973597
fn get_and_clear_pending_msg_events(&self) -> Vec<MessageSendEvent> {
3598+
let _persistence_guard = PersistenceNotifierGuard::new(&self.total_consistency_lock, &self.persistence_notifier);
3599+
35983600
//TODO: This behavior should be documented. It's non-intuitive that we query
35993601
// ChannelMonitors when clearing other events.
36003602
self.process_pending_monitor_events();
@@ -3616,6 +3618,8 @@ impl<Signer: Sign, M: Deref, T: Deref, K: Deref, F: Deref, L: Deref> EventsProvi
36163618
L::Target: Logger,
36173619
{
36183620
fn get_and_clear_pending_events(&self) -> Vec<Event> {
3621+
let _persistence_guard = PersistenceNotifierGuard::new(&self.total_consistency_lock, &self.persistence_notifier);
3622+
36193623
//TODO: This behavior should be documented. It's non-intuitive that we query
36203624
// ChannelMonitors when clearing other events.
36213625
self.process_pending_monitor_events();

0 commit comments

Comments
 (0)