From 9110955b63eea2a218d86fb9c9059eec4965e13a Mon Sep 17 00:00:00 2001 From: Tunglies <77394545+Tunglies@users.noreply.github.com> Date: Sun, 31 Aug 2025 16:19:31 +0800 Subject: [PATCH] fix: streamline service availability checks and improve logging for core startup --- src-tauri/src/core/core.rs | 31 ++++++++++++++++--------------- 1 file changed, 16 insertions(+), 15 deletions(-) diff --git a/src-tauri/src/core/core.rs b/src-tauri/src/core/core.rs index 4b8ad96c..71cb9879 100644 --- a/src-tauri/src/core/core.rs +++ b/src-tauri/src/core/core.rs @@ -1070,22 +1070,24 @@ impl CoreManager { service::reinstall_service().await?; } logging!(info, Type::Core, true, "服务可用,使用服务模式启动"); + self.stop_core_by_service().await?; self.start_core_by_service().await?; + return Ok(()); + }; + + // 服务不可用,检查用户偏好 + let service_state = service::ServiceState::get().await; + if service_state.prefer_sidecar { + logging!( + info, + Type::Core, + true, + "服务不可用,根据用户偏好使用Sidecar模式" + ); + self.start_core_by_sidecar().await?; } else { - // 服务不可用,检查用户偏好 - let service_state = service::ServiceState::get().await; - if service_state.prefer_sidecar { - logging!( - info, - Type::Core, - true, - "服务不可用,根据用户偏好使用Sidecar模式" - ); - self.start_core_by_sidecar().await?; - } else { - logging!(info, Type::Core, true, "服务不可用,使用Sidecar模式"); - self.start_core_by_sidecar().await?; - } + logging!(info, Type::Core, true, "服务不可用,使用Sidecar模式"); + self.start_core_by_sidecar().await?; } Ok(()) } @@ -1102,7 +1104,6 @@ impl CoreManager { /// 重启内核 pub async fn restart_core(&self) -> Result<()> { self.stop_core().await?; - self.start_core().await?; Ok(()) }