summaryrefslogtreecommitdiffhomepage
path: root/android/src
diff options
context:
space:
mode:
authorEmīls <pinkisemils@mullvad.net>2020-02-12 17:05:26 +0000
committerEmīls <pinkisemils@mullvad.net>2020-02-14 11:49:32 +0000
commit110c90164905911e7125e126b3e1837c50994026 (patch)
treed162af7c885a19a6dbab3a704f122d9302608c31 /android/src
parent879fd9a8732311c30d4e69a21e73493b117ce680 (diff)
downloadmullvadvpn-110c90164905911e7125e126b3e1837c50994026.tar.xz
mullvadvpn-110c90164905911e7125e126b3e1837c50994026.zip
Check if returned tunnel is null
If the daemon tries to connect when our service has had it's permissions revoked on Android, VpnServiceBuilder.establish() will return a null poitner, which has to be checked for. By returning an error when this happens, the daemon ends up in the error state where it's not blocking. Whilst not ideal, this is preferrable to the crash.
Diffstat (limited to 'android/src')
-rw-r--r--android/src/main/kotlin/net/mullvad/talpid/TalpidVpnService.kt2
1 files changed, 1 insertions, 1 deletions
diff --git a/android/src/main/kotlin/net/mullvad/talpid/TalpidVpnService.kt b/android/src/main/kotlin/net/mullvad/talpid/TalpidVpnService.kt
index 3d9200f345..e2ea8c5818 100644
--- a/android/src/main/kotlin/net/mullvad/talpid/TalpidVpnService.kt
+++ b/android/src/main/kotlin/net/mullvad/talpid/TalpidVpnService.kt
@@ -34,7 +34,7 @@ open class TalpidVpnService : VpnService() {
val vpnInterface = builder.establish()
- return vpnInterface.detachFd()
+ return vpnInterface?.detachFd() ?: 0
}
fun bypass(socket: Int): Boolean {