diff options
| author | Janito Vaqueiro Ferreira Filho <janito@mullvad.net> | 2019-12-03 15:06:08 +0000 |
|---|---|---|
| committer | Janito Vaqueiro Ferreira Filho <janito@mullvad.net> | 2019-12-04 12:17:24 +0000 |
| commit | 3086b675415bddcd22b60004d6abd1ab762c4980 (patch) | |
| tree | 1be77da88ced8e63fa53bad9ba4de708928abb3f /android/src | |
| parent | 69ae2007c052a9b71943d57162516c98244f5e24 (diff) | |
| download | mullvadvpn-3086b675415bddcd22b60004d6abd1ab762c4980.tar.xz mullvadvpn-3086b675415bddcd22b60004d6abd1ab762c4980.zip | |
Store sender address in Java class
Return the ownership to the Rust code when the object is garbage
collected so that it is correctly freed.
Diffstat (limited to 'android/src')
| -rw-r--r-- | android/src/main/kotlin/net/mullvad/talpid/ConnectivityListener.kt | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/android/src/main/kotlin/net/mullvad/talpid/ConnectivityListener.kt b/android/src/main/kotlin/net/mullvad/talpid/ConnectivityListener.kt index 143587d340..369d61b813 100644 --- a/android/src/main/kotlin/net/mullvad/talpid/ConnectivityListener.kt +++ b/android/src/main/kotlin/net/mullvad/talpid/ConnectivityListener.kt @@ -12,6 +12,8 @@ class ConnectivityListener : BroadcastReceiver() { var isConnected = true private set + var senderAddress = 0L + fun register(context: Context) { val intentFilter = IntentFilter() @@ -49,4 +51,11 @@ class ConnectivityListener : BroadcastReceiver() { networkInfo.detailedState == DetailedState.CONNECTED }) } + + private fun finalize() { + destroySender(senderAddress) + senderAddress = 0L + } + + private external fun destroySender(senderAddress: Long) } |
