From 421924b73fb4021ddfd58002e3e3adef8eb01e13 Mon Sep 17 00:00:00 2001 From: Peter Steinberger Date: Mon, 8 Dec 2025 17:12:42 +0100 Subject: [PATCH] fix: restart webchat tunnel on main actor --- apps/macos/Sources/Clawdis/WebChatWindow.swift | 10 ++++------ 1 file changed, 4 insertions(+), 6 deletions(-) diff --git a/apps/macos/Sources/Clawdis/WebChatWindow.swift b/apps/macos/Sources/Clawdis/WebChatWindow.swift index 1b5c82633..2dc39c6df 100644 --- a/apps/macos/Sources/Clawdis/WebChatWindow.swift +++ b/apps/macos/Sources/Clawdis/WebChatWindow.swift @@ -98,15 +98,13 @@ final class WebChatWindowController: NSWindowController, WKNavigationDelegate { tunnel.process.terminationHandler = { [weak self] _ in guard let self else { return } webChatLogger.error("webchat tunnel terminated; restarting") - Task { [weak self] in + Task { @MainActor [weak self] in guard let self else { return } do { - _ = try await self.startOrRestartTunnel() - if let base = self.baseEndpoint { - await MainActor.run { self.loadPage(baseURL: base) } - } + let base = try await self.startOrRestartTunnel() + self.loadPage(baseURL: base) } catch { - await MainActor.run { self.showError(error.localizedDescription) } + self.showError(error.localizedDescription) } } }