summaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorJanito Vaqueiro Ferreira Filho <janito@mullvad.net>2020-11-21 02:10:42 +0000
committerJanito Vaqueiro Ferreira Filho <janito@mullvad.net>2020-11-24 11:56:00 +0000
commit9ea088a3f8d38187e79ef5a91d7740638ad7eb03 (patch)
tree80e5aedf20ae69b0ac13bec70ef19268b64fba14
parent06daf51fe1f4910847a94c0137710012e0dfac8c (diff)
downloadmullvadvpn-9ea088a3f8d38187e79ef5a91d7740638ad7eb03.tar.xz
mullvadvpn-9ea088a3f8d38187e79ef5a91d7740638ad7eb03.zip
Wait for split tunneling to be ready
-rw-r--r--android/src/main/kotlin/net/mullvad/mullvadvpn/service/DaemonInstance.kt1
-rw-r--r--android/src/main/kotlin/net/mullvad/mullvadvpn/service/MullvadVpnService.kt5
2 files changed, 3 insertions, 3 deletions
diff --git a/android/src/main/kotlin/net/mullvad/mullvadvpn/service/DaemonInstance.kt b/android/src/main/kotlin/net/mullvad/mullvadvpn/service/DaemonInstance.kt
index 7a8c7f08dd..f3323e1aa3 100644
--- a/android/src/main/kotlin/net/mullvad/mullvadvpn/service/DaemonInstance.kt
+++ b/android/src/main/kotlin/net/mullvad/mullvadvpn/service/DaemonInstance.kt
@@ -41,6 +41,7 @@ class DaemonInstance(val vpnService: MullvadVpnService, val listener: (MullvadDa
var isRunning = true
prepareFiles()
+ vpnService.splitTunneling.join()
while (isRunning) {
if (!waitForCommand(channel, Command.START)) {
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 62ade7f4d7..176a9c7f7f 100644
--- a/android/src/main/kotlin/net/mullvad/mullvadvpn/service/MullvadVpnService.kt
+++ b/android/src/main/kotlin/net/mullvad/mullvadvpn/service/MullvadVpnService.kt
@@ -41,8 +41,6 @@ class MullvadVpnService : TalpidVpnService() {
private val binder = LocalBinder()
private val serviceNotifier = EventNotifier<ServiceInstance?>(null)
- private val splitTunneling = CompletableDeferred<SplitTunneling>()
-
private var isStopping = false
private var shouldStop = false
@@ -88,6 +86,8 @@ class MullvadVpnService : TalpidVpnService() {
notificationManager.lockedToForeground = isUiVisible or isBound
}
+ internal val splitTunneling = CompletableDeferred<SplitTunneling>()
+
override fun onCreate() {
super.onCreate()
Log.d(TAG, "Initializing service")
@@ -221,7 +221,6 @@ class MullvadVpnService : TalpidVpnService() {
private fun startDaemon() = GlobalScope.launch(Dispatchers.Default) {
Log.d(TAG, "Starting daemon")
- splitTunneling.await()
daemonInstance.start()
}