Skip to content

Commit 93a64fc

Browse files
test - per_peer_state as write locks
1 parent 8ce4756 commit 93a64fc

File tree

1 file changed

+3
-3
lines changed

1 file changed

+3
-3
lines changed

lightning/src/ln/channelmanager.rs

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1751,7 +1751,7 @@ impl<M: Deref, T: Deref, K: Deref, F: Deref, L: Deref> ChannelManager<M, T, K, F
17511751
}
17521752

17531753
let channel = {
1754-
let per_peer_state = self.per_peer_state.read().unwrap();
1754+
let per_peer_state = self.per_peer_state.write().unwrap();
17551755
match per_peer_state.get(&their_network_key) {
17561756
Some(peer_state) => {
17571757
let outbound_scid_alias = self.create_and_insert_outbound_scid_alias();
@@ -1848,7 +1848,7 @@ impl<M: Deref, T: Deref, K: Deref, F: Deref, L: Deref> ChannelManager<M, T, K, F
18481848
});
18491849
}
18501850
}
1851-
let per_peer_state = self.per_peer_state.read().unwrap();
1851+
let per_peer_state = self.per_peer_state.write().unwrap();
18521852
for chan in res.iter_mut() {
18531853
if let Some(peer_state) = per_peer_state.get(&chan.counterparty.node_id) {
18541854
chan.counterparty.features = peer_state.lock().unwrap().latest_features.clone();
@@ -1906,7 +1906,7 @@ impl<M: Deref, T: Deref, K: Deref, F: Deref, L: Deref> ChannelManager<M, T, K, F
19061906
if *counterparty_node_id != chan_entry.get().get_counterparty_node_id(){
19071907
return Err(APIError::APIMisuseError { err: "The passed counterparty_node_id doesn't match the channel's counterparty node_id".to_owned() });
19081908
}
1909-
let per_peer_state = self.per_peer_state.read().unwrap();
1909+
let per_peer_state = self.per_peer_state.write().unwrap();
19101910
let (shutdown_msg, monitor_update, htlcs) = match per_peer_state.get(&counterparty_node_id) {
19111911
Some(peer_state) => {
19121912
let peer_state = peer_state.lock().unwrap();

0 commit comments

Comments
 (0)