Skip to content

Commit b7beff0

Browse files
committed
Handle event_queue push failure in ChannelPending.
1 parent 8fa90f0 commit b7beff0

File tree

1 file changed

+15
-11
lines changed

1 file changed

+15
-11
lines changed

src/event.rs

Lines changed: 15 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -1131,18 +1131,22 @@ where
11311131
channel_id,
11321132
counterparty_node_id,
11331133
);
1134-
self.event_queue
1135-
.add_event(Event::ChannelPending {
1136-
channel_id,
1137-
user_channel_id: UserChannelId(user_channel_id),
1138-
former_temporary_channel_id: former_temporary_channel_id.unwrap(),
1139-
counterparty_node_id,
1140-
funding_txo,
1141-
})
1142-
.unwrap_or_else(|e| {
1134+
1135+
let event = Event::ChannelPending {
1136+
channel_id,
1137+
user_channel_id: UserChannelId(user_channel_id),
1138+
former_temporary_channel_id: former_temporary_channel_id.unwrap(),
1139+
counterparty_node_id,
1140+
funding_txo,
1141+
};
1142+
match self.event_queue.add_event(event) {
1143+
Ok(_) => {},
1144+
Err(e) => {
11431145
log_error!(self.logger, "Failed to push to event queue: {}", e);
1144-
panic!("Failed to push to event queue");
1145-
});
1146+
return Err(ReplayEvent());
1147+
},
1148+
};
1149+
11461150
let network_graph = self.network_graph.read_only();
11471151
let channels =
11481152
self.channel_manager.list_channels_with_counterparty(&counterparty_node_id);

0 commit comments

Comments
 (0)