diff options
Diffstat (limited to 'android/service/src')
| -rw-r--r-- | android/service/src/main/kotlin/net/mullvad/mullvadvpn/service/ForegroundNotificationManager.kt | 2 | ||||
| -rw-r--r-- | android/service/src/main/kotlin/net/mullvad/mullvadvpn/service/MullvadDaemon.kt | 8 |
2 files changed, 6 insertions, 4 deletions
diff --git a/android/service/src/main/kotlin/net/mullvad/mullvadvpn/service/ForegroundNotificationManager.kt b/android/service/src/main/kotlin/net/mullvad/mullvadvpn/service/ForegroundNotificationManager.kt index eacd2d4bc9..b360613eaa 100644 --- a/android/service/src/main/kotlin/net/mullvad/mullvadvpn/service/ForegroundNotificationManager.kt +++ b/android/service/src/main/kotlin/net/mullvad/mullvadvpn/service/ForegroundNotificationManager.kt @@ -60,7 +60,7 @@ class ForegroundNotificationManager( jobTracker.newBackgroundJob("notificationLoggedInJob") { daemon ?.deviceStateUpdates - ?.onStart { emit(daemon.getAndEmitDeviceState()) } + ?.onStart { daemon.getAndEmitDeviceState()?.let { emit(it) } } ?.collect { deviceState -> loggedIn = deviceState is DeviceState.LoggedIn } } } diff --git a/android/service/src/main/kotlin/net/mullvad/mullvadvpn/service/MullvadDaemon.kt b/android/service/src/main/kotlin/net/mullvad/mullvadvpn/service/MullvadDaemon.kt index fd734bbeac..0cfd0e1f7d 100644 --- a/android/service/src/main/kotlin/net/mullvad/mullvadvpn/service/MullvadDaemon.kt +++ b/android/service/src/main/kotlin/net/mullvad/mullvadvpn/service/MullvadDaemon.kt @@ -135,8 +135,8 @@ class MullvadDaemon( } } - fun getAndEmitDeviceState(): DeviceState { - return getDevice(daemonInterfaceAddress).also { deviceState -> + fun getAndEmitDeviceState(): DeviceState? { + return getDevice(daemonInterfaceAddress)?.also { deviceState -> _deviceStateUpdates.tryEmit(deviceState) } } @@ -257,7 +257,9 @@ class MullvadDaemon( accountToken: String? ): List<Device>? - private external fun getDevice(daemonInterfaceAddress: Long): DeviceState + // TODO: Review this method when redoing Daemon communication, it can be null which was not + // considered when this method was initially added. + private external fun getDevice(daemonInterfaceAddress: Long): DeviceState? private external fun updateDevice(daemonInterfaceAddress: Long) |
