From 3acb70b8e14a0ce3f5169327407595aceab987d8 Mon Sep 17 00:00:00 2001 From: Dude so hot Date: Sat, 14 Sep 2024 19:56:50 +0800 Subject: [PATCH] Add safety hint for deref_mut_direct_bytebuffer Signed-off-by: Dude so hot --- app/src/main/rust/src/lib.rs | 2 ++ 1 file changed, 2 insertions(+) diff --git a/app/src/main/rust/src/lib.rs b/app/src/main/rust/src/lib.rs index b66df36c5..3c9ce52a5 100644 --- a/app/src/main/rust/src/lib.rs +++ b/app/src/main/rust/src/lib.rs @@ -60,6 +60,8 @@ where fn deref_mut_direct_bytebuffer(env: &JNIEnv, buffer: JByteBuffer) -> Result<&'static mut [u8]> { let ptr = env.get_direct_buffer_address(&buffer)?; let cap = env.get_direct_buffer_capacity(&buffer)?; + + // SAFETY: jni contract, buffer must alive through native call. Ok(unsafe { &mut *slice_from_raw_parts_mut(ptr, cap) }) }