diff options
Diffstat (limited to 'android/src/main')
| -rw-r--r-- | android/src/main/kotlin/net/mullvad/mullvadvpn/service/MullvadVpnService.kt | 14 |
1 files changed, 14 insertions, 0 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 db3cbfb7ec..3a533d18cd 100644 --- a/android/src/main/kotlin/net/mullvad/mullvadvpn/service/MullvadVpnService.kt +++ b/android/src/main/kotlin/net/mullvad/mullvadvpn/service/MullvadVpnService.kt @@ -24,16 +24,28 @@ class MullvadVpnService : TalpidVpnService() { private var serviceNotifier = EventNotifier<ServiceInstance?>(null) + private var bindCount = 0 + set(value) { + field = value + isBound = bindCount != 0 + } + + private var isBound = false + override fun onCreate() { super.onCreate() setUp() } override fun onBind(intent: Intent): IBinder { + bindCount += 1 + return super.onBind(intent) ?: binder } override fun onRebind(intent: Intent) { + bindCount += 1 + if (isStopping) { restart() isStopping = false @@ -45,6 +57,8 @@ class MullvadVpnService : TalpidVpnService() { } override fun onUnbind(intent: Intent): Boolean { + bindCount -= 1 + return true } |
