Skip to content

Commit 41d275d

Browse files
f - take channel_state only when needed in internal_channel_update
1 parent 91bae8d commit 41d275d

File tree

1 file changed

+2
-2
lines changed

1 file changed

+2
-2
lines changed

lightning/src/ln/channelmanager.rs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5168,15 +5168,15 @@ impl<Signer: Sign, M: Deref, T: Deref, K: Deref, F: Deref, L: Deref> ChannelMana
51685168

51695169
/// Returns ShouldPersist if anything changed, otherwise either SkipPersist or an Err.
51705170
fn internal_channel_update(&self, counterparty_node_id: &PublicKey, msg: &msgs::ChannelUpdate) -> Result<NotifyOption, MsgHandleErrInternal> {
5171-
let mut channel_state_lock = self.channel_state.lock().unwrap();
5172-
let channel_state = &mut *channel_state_lock;
51735171
let chan_id = match self.short_to_chan_info.read().unwrap().get(&msg.contents.short_channel_id) {
51745172
Some((_cp_id, chan_id)) => chan_id.clone(),
51755173
None => {
51765174
// It's not a local channel
51775175
return Ok(NotifyOption::SkipPersist)
51785176
}
51795177
};
5178+
let mut channel_state_lock = self.channel_state.lock().unwrap();
5179+
let channel_state = &mut *channel_state_lock;
51805180
match channel_state.by_id.entry(chan_id) {
51815181
hash_map::Entry::Occupied(mut chan) => {
51825182
if chan.get().get_counterparty_node_id() != *counterparty_node_id {

0 commit comments

Comments
 (0)