Skip to content

Commit

Permalink
Merge pull request #60 from embassy-rs/channel-disconnect
Browse files Browse the repository at this point in the history
ensure channels are set to disconnected
  • Loading branch information
lulf authored Jun 5, 2024
2 parents fd30cf7 + 5ef2c08 commit 2aef641
Showing 1 changed file with 6 additions and 18 deletions.
24 changes: 6 additions & 18 deletions host/src/channel_manager.rs
Original file line number Diff line number Diff line change
Expand Up @@ -439,24 +439,12 @@ impl<'d, const RXQ: usize> ChannelManager<'d, RXQ> {
let cid = res.scid;
let mut state = self.state.borrow_mut();
for storage in state.channels.iter_mut() {
match storage.state {
ChannelState::Disconnecting if cid == storage.cid => {
storage.state = ChannelState::Disconnected;
break;
}
ChannelState::PeerConnecting(_) if cid == storage.cid => {
storage.state = ChannelState::Disconnecting;
break;
}
ChannelState::Connecting(_) if cid == storage.cid => {
storage.state = ChannelState::Disconnecting;
break;
}
ChannelState::Connected if cid == storage.cid => {
storage.state = ChannelState::Disconnecting;
break;
}
_ => {}
if cid == storage.cid {
storage.state = ChannelState::Disconnected;
storage.cid = 0;
storage.peer_cid = 0;
storage.conn = 0;
break;
}
}
Ok(())
Expand Down

0 comments on commit 2aef641

Please sign in to comment.