Skip to content

Commit 6947d20

Browse files
authored
Merge pull request #45 from ivpn/GAA-43
[GAA-43] Fix mock location crash for Android 10
2 parents 3b91097 + c10e777 commit 6947d20

1 file changed

Lines changed: 10 additions & 6 deletions

File tree

app/src/main/java/net/ivpn/client/ui/mocklocation/MockLocationController.kt

Lines changed: 10 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -35,14 +35,15 @@ import net.ivpn.client.common.prefs.EncryptedSettingsPreference
3535
import net.ivpn.client.common.prefs.ServerType
3636
import net.ivpn.client.common.prefs.ServersRepository
3737
import net.ivpn.client.rest.data.model.Server
38+
import java.lang.IllegalStateException
3839
import javax.inject.Inject
3940

4041
@ApplicationScope
4142
class MockLocationController @Inject constructor(
4243
private val settingsPreference: EncryptedSettingsPreference,
4344
private val serversRepository: ServersRepository,
4445
private val multiHopController: MultiHopController
45-
){
46+
) {
4647
var isEnabled: Boolean = false
4748
var isTestProviderAdded = false
4849

@@ -125,7 +126,6 @@ class MockLocationController @Inject constructor(
125126
}
126127

127128
fun stop() {
128-
println("Stop Mock location")
129129
runnable?.let {
130130
handler.removeCallbacks(it)
131131
}
@@ -137,8 +137,9 @@ class MockLocationController @Inject constructor(
137137
}
138138

139139
private fun removeProvider(provider: String) {
140-
if (manager.isProviderEnabled(provider)) {
140+
try {
141141
manager.removeTestProvider(provider)
142+
} catch (ignored: IllegalArgumentException) {
142143
}
143144
}
144145

@@ -151,9 +152,12 @@ class MockLocationController @Inject constructor(
151152
}
152153

153154
private fun addTestProviders(provider: String) {
154-
manager.addTestProvider(provider, false, false,
155-
false, false, false, true,
156-
true, 1, 2)
155+
try {
156+
manager.addTestProvider(provider, false, false,
157+
false, false, false, true,
158+
true, 1, 2)
159+
} catch (ignored: IllegalArgumentException) {
160+
}
157161
}
158162

159163
private fun setMock(provider: String, latitude: Double, longitude: Double) {

0 commit comments

Comments
 (0)