diff options
| author | Gustav Sörnäs <gustav@sornas.net> | 2021-01-05 20:02:32 +0100 |
|---|---|---|
| committer | Gustav Sörnäs <gustav@sornas.net> | 2021-01-05 20:02:32 +0100 |
| commit | b15e010a6bebc7b7c6b8afb1b51f2673d0695e06 (patch) | |
| tree | dfb34f494d9bf49ad504cdd5b319fc73cd49800b /mumd/src/network | |
| parent | ab038b58b4440804cdfded56167ce72b599d87c8 (diff) | |
| download | mum-b15e010a6bebc7b7c6b8afb1b51f2673d0695e06.tar.gz | |
tokio mutex
Diffstat (limited to 'mumd/src/network')
| -rw-r--r-- | mumd/src/network/tcp.rs | 5 | ||||
| -rw-r--r-- | mumd/src/network/udp.rs | 6 |
2 files changed, 7 insertions, 4 deletions
diff --git a/mumd/src/network/tcp.rs b/mumd/src/network/tcp.rs index f767446..717b195 100644 --- a/mumd/src/network/tcp.rs +++ b/mumd/src/network/tcp.rs @@ -184,7 +184,7 @@ async fn send_packets( async fn send_voice( packet_sender: mpsc::UnboundedSender<ControlPacket<Serverbound>>, - receiver: Arc<Mutex<Box<(dyn Stream<Item = VoicePacket<Serverbound>> + Unpin)>>>, + receiver: Arc<tokio::sync::Mutex<Box<(dyn Stream<Item = VoicePacket<Serverbound>> + Unpin)>>>, phase_watcher: watch::Receiver<StatePhase>, ) { let inner_phase_watcher = phase_watcher.clone(); @@ -196,7 +196,7 @@ async fn send_voice( || async { packet_sender.send(receiver .lock() - .unwrap() + .await .next() .await .unwrap() @@ -208,6 +208,7 @@ async fn send_voice( || async {}, inner_phase_watcher.clone(), ).await; + debug!("Stopped sending TCP voice"); Some(Some(())) }, |_| async {}, diff --git a/mumd/src/network/udp.rs b/mumd/src/network/udp.rs index 9435e94..5e725cd 100644 --- a/mumd/src/network/udp.rs +++ b/mumd/src/network/udp.rs @@ -228,7 +228,7 @@ async fn send_voice( sink: Arc<Mutex<UdpSender>>, server_addr: SocketAddr, phase_watcher: watch::Receiver<StatePhase>, - receiver: Arc<Mutex<Box<(dyn Stream<Item = VoicePacket<Serverbound>> + Unpin)>>>, + receiver: Arc<tokio::sync::Mutex<Box<(dyn Stream<Item = VoicePacket<Serverbound>> + Unpin)>>>, ) { let inner_phase_watcher = phase_watcher.clone(); run_until( @@ -237,7 +237,9 @@ async fn send_voice( run_until( |phase| !matches!(phase, StatePhase::Connected(VoiceStreamType::UDP)), || async { - sink.lock().unwrap().send((receiver.lock().unwrap().next().await.unwrap(), server_addr)).await.unwrap(); + debug!("Sending UDP audio"); + sink.lock().unwrap().send((receiver.lock().await.next().await.unwrap(), server_addr)).await.unwrap(); + debug!("Sent UDP audio"); Some(Some(())) }, |_| async {}, |
