Skip to content

Commit 1cdb955

Browse files
committed
Improvements
1 parent 08c0d41 commit 1cdb955

File tree

2 files changed

+20
-10
lines changed

2 files changed

+20
-10
lines changed

android/lib/talpid/src/main/kotlin/net/mullvad/talpid/model/Connectivity.kt

+3
Original file line numberDiff line numberDiff line change
@@ -2,4 +2,7 @@ package net.mullvad.talpid.model
22

33
sealed class Connectivity {
44
data class Status(val ipv4: Boolean, val ipv6: Boolean) : Connectivity()
5+
6+
// Required by jni
7+
data object PresumeOnline : Connectivity()
58
}

talpid-core/src/connectivity_listener.rs

+17-10
Original file line numberDiff line numberDiff line change
@@ -114,16 +114,23 @@ impl ConnectivityListener {
114114
.map_err(Error::AttachJvmToThread)?,
115115
);
116116

117-
let is_connected = env
118-
.call_method(
119-
self.android_listener.as_obj(),
120-
"isConnected",
121-
"()Lnet/mullvad/talpid/model/Connectivity;",
122-
&[],
123-
)
124-
.expect("Missing isConnected")
125-
.l()
126-
.expect("isConnected is not an object");
117+
let is_connected = env.call_method(
118+
self.android_listener.as_obj(),
119+
"isConnected",
120+
"()Lnet/mullvad/talpid/model/Connectivity;",
121+
&[],
122+
);
123+
124+
let is_connected = match is_connected {
125+
Ok(JValue::Object(object)) => object,
126+
value => {
127+
return Err(Error::InvalidMethodResult(
128+
"ConnectivityListener",
129+
"isConnected",
130+
format!("{:?}", value),
131+
))
132+
}
133+
};
127134

128135
Ok(Connectivity::from_java(&env, is_connected))
129136
}

0 commit comments

Comments
 (0)