diff --git a/LocalPackages/VPNiOS/Sources/VPNWidgetSupport/VPNWidgetTunnelController.swift b/LocalPackages/VPNiOS/Sources/VPNWidgetSupport/VPNWidgetTunnelController.swift index 379457a8a7..252fbce78e 100644 --- a/LocalPackages/VPNiOS/Sources/VPNWidgetSupport/VPNWidgetTunnelController.swift +++ b/LocalPackages/VPNiOS/Sources/VPNWidgetSupport/VPNWidgetTunnelController.swift @@ -75,7 +75,7 @@ public struct VPNWidgetTunnelController: Sendable { while true { try await Task.sleep(for: .milliseconds(500)) - if start.timeIntervalSinceNow > 30 + if abs(start.timeIntervalSinceNow) > 30 || (manager.connection.status != .connecting && manager.connection.status != .disconnecting) { break