From 727a470d108e8d893919306ecf5ba1b4ced3d462 Mon Sep 17 00:00:00 2001 From: root Date: Tue, 19 Dec 2023 19:51:41 +0800 Subject: [PATCH] fix(ncnn-rs): compatible with arm 32bit --- ncnn-bind/src/lib.rs | 1 - ncnn-rs/src/mat.rs | 12 ++++++++++-- ncnn-rs/src/net.rs | 8 ++++++-- 3 files changed, 16 insertions(+), 5 deletions(-) diff --git a/ncnn-bind/src/lib.rs b/ncnn-bind/src/lib.rs index 000b67b..e51e4b2 100755 --- a/ncnn-bind/src/lib.rs +++ b/ncnn-bind/src/lib.rs @@ -1,7 +1,6 @@ #![allow(non_upper_case_globals)] #![allow(non_camel_case_types)] #![allow(non_snake_case)] - // Suppress bindgen test warnings #![allow(deref_nullptr)] diff --git a/ncnn-rs/src/mat.rs b/ncnn-rs/src/mat.rs index c8cbc4c..e4cf0c1 100755 --- a/ncnn-rs/src/mat.rs +++ b/ncnn-rs/src/mat.rs @@ -396,8 +396,16 @@ impl Mat { unsafe { ncnn_mat_get_elempack(self.ptr) } } - pub fn cstep(&self) -> u64 { - unsafe { ncnn_mat_get_cstep(self.ptr) } + pub fn cstep(&self) -> usize { + #[cfg(target_pointer_width = "32")] + { + unsafe { ncnn_mat_get_cstep(self.ptr) as u32 as usize } + } + + #[cfg(target_pointer_width = "64")] + { + unsafe { ncnn_mat_get_cstep(self.ptr) as u64 as usize } + } } /// Pointer to raw matrix data diff --git a/ncnn-rs/src/net.rs b/ncnn-rs/src/net.rs index 1e32029..8ca35de 100755 --- a/ncnn-rs/src/net.rs +++ b/ncnn-rs/src/net.rs @@ -69,8 +69,12 @@ impl Drop for Net { mod tests { use super::*; - fn is_send() -> bool { true } - fn is_sync() -> bool { true } + fn is_send() -> bool { + true + } + fn is_sync() -> bool { + true + } #[test] fn load_not_exist_model() {