From: Jason A. Donenfeld Date: Sat, 3 Nov 2018 05:09:07 +0000 (+0100) Subject: TunnelsManager: do not change back to inactive if we are resolving the endpoint X-Git-Tag: 0.0.20181104-1~29 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=9e9898f17d2c61e22e4fd144bf44cc2f6572beb2;p=thirdparty%2Fwireguard-apple.git TunnelsManager: do not change back to inactive if we are resolving the endpoint Signed-off-by: Jason A. Donenfeld --- diff --git a/WireGuard/WireGuard/VPN/TunnelsManager.swift b/WireGuard/WireGuard/VPN/TunnelsManager.swift index 925b5ce..eb69ccd 100644 --- a/WireGuard/WireGuard/VPN/TunnelsManager.swift +++ b/WireGuard/WireGuard/VPN/TunnelsManager.swift @@ -48,6 +48,7 @@ class TunnelsManager { for tunnel in tunnels { if (tunnel.status != .inactive) { currentTunnel = tunnel + break } } self.tunnels = tunnels @@ -439,6 +440,10 @@ class TunnelContainer: NSObject { } return } + if (s.status == .resolvingEndpointDomains && connection.status == .disconnected) { + // Don't change to .inactive if we're still resolving endpoints + return + } s.status = TunnelStatus(from: connection.status) if (s.status == .inactive) { s.stopObservingTunnelStatus()