diff options
| author | Emīls <pinkisemils@mullvad.net> | 2020-02-12 17:05:26 +0000 |
|---|---|---|
| committer | Emīls <pinkisemils@mullvad.net> | 2020-02-14 11:49:32 +0000 |
| commit | 110c90164905911e7125e126b3e1837c50994026 (patch) | |
| tree | d162af7c885a19a6dbab3a704f122d9302608c31 /android/src | |
| parent | 879fd9a8732311c30d4e69a21e73493b117ce680 (diff) | |
| download | mullvadvpn-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.kt | 2 |
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 { |
