diff --git a/substrate/client/network/src/protocol/generic_proto/behaviour.rs b/substrate/client/network/src/protocol/generic_proto/behaviour.rs index 9d48d40bdfaff4cd80af52237bcf5428af0c4f7e..b3c209eb0c0c6aa0810612f08ba5b9b6e6162246 100644 --- a/substrate/client/network/src/protocol/generic_proto/behaviour.rs +++ b/substrate/client/network/src/protocol/generic_proto/behaviour.rs @@ -1364,10 +1364,9 @@ impl NetworkBehaviour for GenericProto { } for (peer_id, peer_state) in self.peers.iter_mut() { - match mem::replace(peer_state, PeerState::Poisoned) { - PeerState::PendingRequest { mut timer, timer_deadline } => { - if let Poll::Pending = Pin::new(&mut timer).poll(cx) { - *peer_state = PeerState::PendingRequest { timer, timer_deadline }; + match peer_state { + PeerState::PendingRequest { timer, .. } => { + if let Poll::Pending = Pin::new(timer).poll(cx) { continue; } @@ -1379,17 +1378,8 @@ impl NetworkBehaviour for GenericProto { *peer_state = PeerState::Requested; } - PeerState::DisabledPendingEnable { - mut timer, - open, - timer_deadline - } => { - if let Poll::Pending = Pin::new(&mut timer).poll(cx) { - *peer_state = PeerState::DisabledPendingEnable { - timer, - open, - timer_deadline - }; + PeerState::DisabledPendingEnable { timer, open, .. } => { + if let Poll::Pending = Pin::new(timer).poll(cx) { continue; } @@ -1399,10 +1389,9 @@ impl NetworkBehaviour for GenericProto { handler: NotifyHandler::All, event: NotifsHandlerIn::Enable, }); - *peer_state = PeerState::Enabled { open }; + *peer_state = PeerState::Enabled { open: mem::replace(open, Default::default()) }; } - - st => *peer_state = st, + _ => {}, } }