diff options
| author | Janito Vaqueiro Ferreira Filho <janito@mullvad.net> | 2020-02-06 15:56:23 +0000 |
|---|---|---|
| committer | Janito Vaqueiro Ferreira Filho <janito@mullvad.net> | 2020-02-12 14:29:14 +0000 |
| commit | ad04177d0751d8a5024e12f5f3a7bf813e8d46f6 (patch) | |
| tree | 46df109ee166fafe213565e822f72f0c62a932bb /android/src/main | |
| parent | 2df31edb4dbad57007249c589bf8b421f8a18172 (diff) | |
| download | mullvadvpn-ad04177d0751d8a5024e12f5f3a7bf813e8d46f6.tar.xz mullvadvpn-ad04177d0751d8a5024e12f5f3a7bf813e8d46f6.zip | |
Make sure `ConnectionProxy` is safely torn down
Diffstat (limited to 'android/src/main')
| -rw-r--r-- | android/src/main/kotlin/net/mullvad/mullvadvpn/service/MullvadVpnService.kt | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/android/src/main/kotlin/net/mullvad/mullvadvpn/service/MullvadVpnService.kt b/android/src/main/kotlin/net/mullvad/mullvadvpn/service/MullvadVpnService.kt index 680b6b4eb0..32ec0985e4 100644 --- a/android/src/main/kotlin/net/mullvad/mullvadvpn/service/MullvadVpnService.kt +++ b/android/src/main/kotlin/net/mullvad/mullvadvpn/service/MullvadVpnService.kt @@ -19,6 +19,8 @@ class MullvadVpnService : TalpidVpnService() { private var isStopping = false + private var connectionProxy: ConnectionProxy? = null + private lateinit var daemon: Deferred<MullvadDaemon> private lateinit var notificationManager: ForegroundNotificationManager @@ -101,6 +103,7 @@ class MullvadVpnService : TalpidVpnService() { } onDaemonStopped = { + connectionProxy?.onDestroy() serviceNotifier.notify(null) if (!isStopping) { @@ -109,9 +112,11 @@ class MullvadVpnService : TalpidVpnService() { } } - val connectionProxy = ConnectionProxy(this@MullvadVpnService, daemon) + val newConnectionProxy = ConnectionProxy(this@MullvadVpnService, newDaemon) + + connectionProxy = newConnectionProxy - serviceNotifier.notify(ServiceInstance(daemon, connectionProxy, connectivityListener)) + serviceNotifier.notify(ServiceInstance(daemon, newConnectionProxy, connectivityListener)) daemon } |
