summaryrefslogtreecommitdiffhomepage
path: root/android/src
diff options
context:
space:
mode:
Diffstat (limited to 'android/src')
-rw-r--r--android/src/main/kotlin/net/mullvad/mullvadvpn/service/MullvadVpnService.kt9
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
}