See: https://www.marisibrothers.com/2017/04/memory-leak-in-swift-assigning-function.html
Signed-off-by: Andrej Mihajlov <and@mullvad.net>
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
startTunnelCompletionHandler(PacketTunnelProviderError.couldNotSetNetworkSettings)
} else {
self.networkMonitor = NWPathMonitor()
- self.networkMonitor!.pathUpdateHandler = self.pathUpdate
+ self.networkMonitor!.pathUpdateHandler = { [weak self] path in
+ self?.pathUpdate(path: path)
+ }
self.networkMonitor!.start(queue: DispatchQueue(label: "NetworkMonitor"))
let fileDescriptor = (self.packetFlow.value(forKeyPath: "socket.fileDescriptor") as? Int32) ?? -1