From e7505a4b20c83514a1af28cc9cce798e2fd9f293 Mon Sep 17 00:00:00 2001 From: strawberry Date: Sun, 28 Apr 2024 11:48:06 -0400 Subject: [PATCH] resolve ptr_as_ptr lint Signed-off-by: strawberry --- src/alloc/je.rs | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/src/alloc/je.rs b/src/alloc/je.rs index 18f61809..1a33de79 100644 --- a/src/alloc/je.rs +++ b/src/alloc/je.rs @@ -21,14 +21,13 @@ pub(crate) fn memory_usage() -> String { ) } -#[allow(clippy::ptr_as_ptr)] pub(crate) fn memory_stats() -> String { const MAX_LENGTH: usize = 65536 - 4096; let opts_s = "d"; let mut str = String::new(); - let opaque: *mut c_void = &mut str as *mut _ as *mut c_void; + let opaque = std::ptr::from_mut(&mut str).cast::(); let opts_p: *const c_char = std::ffi::CString::new(opts_s).expect("cstring").into_raw() as *const c_char; // SAFETY: calls malloc_stats_print() with our string instance which must remain @@ -41,7 +40,7 @@ pub(crate) fn memory_stats() -> String { extern "C" fn malloc_stats_cb(opaque: *mut c_void, msg: *const c_char) { // SAFETY: we have to trust the opaque points to our String - let res: &mut String = unsafe { &mut *opaque.cast::() }; + let res: &mut String = unsafe { opaque.cast::().as_mut().unwrap() }; // SAFETY: we have to trust the string is null terminated. let msg = unsafe { std::ffi::CStr::from_ptr(msg) };