summaryrefslogtreecommitdiffhomepage
path: root/mullvad-jni/src/from_java.rs
diff options
context:
space:
mode:
Diffstat (limited to 'mullvad-jni/src/from_java.rs')
-rw-r--r--mullvad-jni/src/from_java.rs13
1 files changed, 12 insertions, 1 deletions
diff --git a/mullvad-jni/src/from_java.rs b/mullvad-jni/src/from_java.rs
index 9cccd738d7..3caf3fd523 100644
--- a/mullvad-jni/src/from_java.rs
+++ b/mullvad-jni/src/from_java.rs
@@ -1,6 +1,9 @@
use crate::is_null::IsNull;
use jnix::{
- jni::objects::{JObject, JString},
+ jni::{
+ objects::{JObject, JString},
+ sys::{jboolean, JNI_FALSE},
+ },
JnixEnv,
};
use mullvad_types::relay_constraints::{
@@ -14,6 +17,14 @@ pub trait FromJava<'env> {
fn from_java(env: &JnixEnv<'env>, source: Self::JavaType) -> Self;
}
+impl<'env> FromJava<'env> for bool {
+ type JavaType = jboolean;
+
+ fn from_java(_: &JnixEnv<'env>, source: Self::JavaType) -> Self {
+ source != JNI_FALSE
+ }
+}
+
impl<'env, T> FromJava<'env> for Option<T>
where
T: FromJava<'env>,