From 62de35de9d2adc6201a7dd8d9fd6f2b5746952f5 Mon Sep 17 00:00:00 2001 From: Ferdinand Schober Date: Sun, 8 Sep 2024 01:49:44 +0200 Subject: [PATCH] fix connection logic --- src/connect.rs | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/src/connect.rs b/src/connect.rs index 147fc35..73bd97f 100644 --- a/src/connect.rs +++ b/src/connect.rs @@ -120,7 +120,14 @@ impl LanMouseConnection { .map(|a| SocketAddr::new(a, port)) .collect::>(); log::info!("client ({handle}) connecting ... (ips: {addrs:?})"); - let (conn, addr) = connect_any(&addrs).await?; + let res = connect_any(&addrs).await; + let (conn, addr) = match res { + Ok(c) => c, + Err(e) => { + connecting.lock().await.remove(&handle); + return Err(e); + } + }; log::info!("client ({handle}) connected @ {addr}"); server.set_active_addr(handle, Some(addr)); conns.lock().await.insert(addr, conn);