summaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorJanito Vaqueiro Ferreira Filho <janito@mullvad.net>2020-05-25 10:29:35 -0300
committerJanito Vaqueiro Ferreira Filho <janito@mullvad.net>2020-05-25 10:29:35 -0300
commitd119e5ad59c1ed289e218647fb2c95d1e46fdac3 (patch)
tree49a0e267a4c75b3d79745ee8013962877adf041c
parentf2f1752439826baebe827e46b479964a26010dc6 (diff)
parent2ba39b7677957ee616c704f72cd5d02512f0b308 (diff)
downloadmullvadvpn-d119e5ad59c1ed289e218647fb2c95d1e46fdac3.tar.xz
mullvadvpn-d119e5ad59c1ed289e218647fb2c95d1e46fdac3.zip
Merge branch 'fix-connect-without-permission'
-rw-r--r--CHANGELOG.md1
-rw-r--r--android/src/main/kotlin/net/mullvad/mullvadvpn/service/ConnectionProxy.kt8
-rw-r--r--android/src/main/kotlin/net/mullvad/mullvadvpn/ui/ServiceConnection.kt1
3 files changed, 8 insertions, 2 deletions
diff --git a/CHANGELOG.md b/CHANGELOG.md
index a14a9d99fc..c63072ffff 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -30,6 +30,7 @@ Line wrap the file at 100 chars. Th
- Fix quitting the app sometimes failing.
- Fix WireGuard key status events being lost by the UI, causing stale information to be shown.
- Fix time left in account not showing in settings screen.
+- Fix attempt to connect when the app doesn't have the VPN permission.
#### Windows
- Fix race in network adapter monitor that could result in data corruption and crashes.
diff --git a/android/src/main/kotlin/net/mullvad/mullvadvpn/service/ConnectionProxy.kt b/android/src/main/kotlin/net/mullvad/mullvadvpn/service/ConnectionProxy.kt
index 2b551538e2..17099078d8 100644
--- a/android/src/main/kotlin/net/mullvad/mullvadvpn/service/ConnectionProxy.kt
+++ b/android/src/main/kotlin/net/mullvad/mullvadvpn/service/ConnectionProxy.kt
@@ -172,8 +172,12 @@ class ConnectionProxy(val context: Context, val daemon: MullvadDaemon) {
if (activity != null) {
activity.requestVpnPermission(intent)
} else {
- val activityIntent = Intent(context, MainActivity::class.java)
- .putExtra(MainActivity.KEY_SHOULD_CONNECT, true)
+ val activityIntent = Intent(context, MainActivity::class.java).apply {
+ addFlags(Intent.FLAG_ACTIVITY_NEW_TASK)
+ putExtra(MainActivity.KEY_SHOULD_CONNECT, true)
+ }
+
+ uiState = state
context.startActivity(activityIntent)
}
diff --git a/android/src/main/kotlin/net/mullvad/mullvadvpn/ui/ServiceConnection.kt b/android/src/main/kotlin/net/mullvad/mullvadvpn/ui/ServiceConnection.kt
index 1da6895fd9..6e621d2a4f 100644
--- a/android/src/main/kotlin/net/mullvad/mullvadvpn/ui/ServiceConnection.kt
+++ b/android/src/main/kotlin/net/mullvad/mullvadvpn/ui/ServiceConnection.kt
@@ -26,5 +26,6 @@ class ServiceConnection(private val service: ServiceInstance, val mainActivity:
appVersionInfoCache.onDestroy()
keyStatusListener.onDestroy()
relayListListener.onDestroy()
+ connectionProxy.mainActivity = null
}
}