diff options
| author | Albin <albin@mullvad.net> | 2023-02-01 09:58:29 +0100 |
|---|---|---|
| committer | Albin <albin@mullvad.net> | 2023-02-02 10:54:28 +0100 |
| commit | 48793707ebf7b843ba7a1315b87e154b02472fa7 (patch) | |
| tree | 50c5aff3d71c8aa37cb3266f07005fd2e94f3ce9 | |
| parent | f2f77e29107fd992631f02b51aff0a1249b8287d (diff) | |
| download | mullvadvpn-48793707ebf7b843ba7a1315b87e154b02472fa7.tar.xz mullvadvpn-48793707ebf7b843ba7a1315b87e154b02472fa7.zip | |
Fix device state listener timing
This commit fixes an issue with the device state listener
being registered too late in some circumstances.
2 files changed, 1 insertions, 3 deletions
diff --git a/android/app/src/main/kotlin/net/mullvad/mullvadvpn/ui/serviceconnection/DeviceRepository.kt b/android/app/src/main/kotlin/net/mullvad/mullvadvpn/ui/serviceconnection/DeviceRepository.kt index 044888e9af..bd47e8719f 100644 --- a/android/app/src/main/kotlin/net/mullvad/mullvadvpn/ui/serviceconnection/DeviceRepository.kt +++ b/android/app/src/main/kotlin/net/mullvad/mullvadvpn/ui/serviceconnection/DeviceRepository.kt @@ -30,9 +30,6 @@ class DeviceRepository( .flatMapLatest { state -> if (state is ServiceConnectionState.ConnectedReady) { state.container.deviceDataSource.deviceStateUpdates - .onStart { - state.container.deviceDataSource.getDevice() - } } else { flowOf(DeviceState.Unknown) } diff --git a/android/app/src/main/kotlin/net/mullvad/mullvadvpn/ui/serviceconnection/ServiceConnectionDeviceDataSource.kt b/android/app/src/main/kotlin/net/mullvad/mullvadvpn/ui/serviceconnection/ServiceConnectionDeviceDataSource.kt index 56e7ee4d28..39159a1a17 100644 --- a/android/app/src/main/kotlin/net/mullvad/mullvadvpn/ui/serviceconnection/ServiceConnectionDeviceDataSource.kt +++ b/android/app/src/main/kotlin/net/mullvad/mullvadvpn/ui/serviceconnection/ServiceConnectionDeviceDataSource.kt @@ -17,6 +17,7 @@ class ServiceConnectionDeviceDataSource( trySend(event.newState) } dispatcher.registerHandler(Event.DeviceStateEvent::class, handler) + connection.trySendRequest(Request.GetDevice, false) awaitClose { // The current dispatcher doesn't support unregistration of handlers. } |
