From 503f6c90395682bf5d7fd3fb8a79bfcfc3c2f329 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Gustav=20S=C3=B6rn=C3=A4s?= Date: Tue, 13 Oct 2020 17:05:22 +0200 Subject: wait for complete state before sending commands --- mumd/src/network/tcp.rs | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) (limited to 'mumd/src/network/tcp.rs') diff --git a/mumd/src/network/tcp.rs b/mumd/src/network/tcp.rs index fa4c4b6..72a2840 100644 --- a/mumd/src/network/tcp.rs +++ b/mumd/src/network/tcp.rs @@ -30,7 +30,7 @@ pub async fn handle( server_host: String, accept_invalid_cert: bool, crypt_state_sender: oneshot::Sender, - packet_receiver: mpsc::Receiver>, + packet_receiver: mpsc::UnboundedReceiver>, ) { let (sink, stream) = connect(server_addr, server_host, accept_invalid_cert).await; let sink = Arc::new(Mutex::new(sink)); @@ -94,7 +94,7 @@ async fn send_pings(sink: Arc>, delay_seconds: u64) { } async fn send_packets(sink: Arc>, - mut packet_receiver: mpsc::Receiver>) { + mut packet_receiver: mpsc::UnboundedReceiver>) { while let Some(packet) = packet_receiver.recv().await { sink.lock().unwrap().send(packet).await.unwrap(); @@ -153,8 +153,7 @@ async fn listen( for (_, channel) in server.channels() { info!("Found channel {}", channel.name()); } - //TODO start listening for packets to send here - state.handle_command(Command::ChannelJoin{channel_id: 1}).await; + state.initialized(); } ControlPacket::Reject(msg) => { warn!("Login rejected: {:?}", msg); -- cgit v1.2.1