From: Roopesh Chander Date: Thu, 7 Feb 2019 18:47:05 +0000 (+0530) Subject: TunnelsManager: Don't lose .restarting state X-Git-Tag: 0.0.20190207-1~8 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=ecd66defe59d80b184e1b15c6272c33dbf42744c;p=thirdparty%2Fwireguard-apple.git TunnelsManager: Don't lose .restarting state Signed-off-by: Roopesh Chander --- diff --git a/WireGuard/WireGuard/Tunnel/TunnelsManager.swift b/WireGuard/WireGuard/Tunnel/TunnelsManager.swift index cd120a5..e5b5984 100644 --- a/WireGuard/WireGuard/Tunnel/TunnelsManager.swift +++ b/WireGuard/WireGuard/Tunnel/TunnelsManager.swift @@ -336,10 +336,8 @@ class TunnelsManager { } } - if (tunnel.status == .restarting) && (session.status == .disconnected || session.status == .disconnecting) { - if session.status == .disconnected { - tunnel.startActivation(activationDelegate: self.activationDelegate) - } + if tunnel.status == .restarting && session.status == .disconnected { + tunnel.startActivation(activationDelegate: self.activationDelegate) return } @@ -442,6 +440,9 @@ class TunnelContainer: NSObject { } func refreshStatus() { + if (status == .restarting) && (tunnelProvider.connection.status == .disconnected || tunnelProvider.connection.status == .disconnecting) { + return + } status = TunnelStatus(from: tunnelProvider.connection.status) isActivateOnDemandEnabled = tunnelProvider.isOnDemandEnabled }