From 2c71b9dc06ed72545d8104dbabda2763fd2c2f51 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=9E=97=E5=89=91=E5=87=9B?= <2993354@qq.com> Date: Sat, 20 Jun 2026 22:32:40 +0800 Subject: [PATCH] fix(redis): replace pubsub server expect with graceful error handling --- src-tauri/src/commands/redis_pubsub_server.rs | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/src-tauri/src/commands/redis_pubsub_server.rs b/src-tauri/src/commands/redis_pubsub_server.rs index ec1adbcd27..298bd8e0e3 100644 --- a/src-tauri/src/commands/redis_pubsub_server.rs +++ b/src-tauri/src/commands/redis_pubsub_server.rs @@ -138,8 +138,16 @@ pub fn start_pubsub_server(state: Arc) { tauri::async_runtime::spawn(async move { let port: u16 = std::env::var("DBX_PORT").ok().and_then(|p| p.parse().ok()).unwrap_or(4224); let addr = std::net::SocketAddr::from(([0, 0, 0, 0], port)); - let listener = tokio::net::TcpListener::bind(addr).await.expect("Failed to bind PubSub server"); + let listener = match tokio::net::TcpListener::bind(addr).await { + Ok(listener) => listener, + Err(error) => { + log::warn!("Failed to bind PubSub server on {addr}: {error}"); + return; + } + }; log::info!("PubSub WebSocket server listening on {addr}"); - axum::serve(listener, router).await.expect("PubSub server error"); + if let Err(error) = axum::serve(listener, router).await { + log::warn!("PubSub server stopped with error: {error}"); + } }); }