From 03353f9796c1a461caaff8ce20ba82b14dc1fbaa Mon Sep 17 00:00:00 2001 From: bluepython508 <16466646+bluepython508@users.noreply.github.com> Date: Tue, 4 Nov 2025 15:18:37 +0000 Subject: [PATCH] Style: use NonNull --- src/lib.rs | 23 ++++++++++++++--------- 1 file changed, 14 insertions(+), 9 deletions(-) diff --git a/src/lib.rs b/src/lib.rs index 4bd1c53..ab11c8e 100644 --- a/src/lib.rs +++ b/src/lib.rs @@ -1,10 +1,10 @@ use std::{ cmp::{max, min}, ffi::{CStr, OsStr, c_void}, - fs, iter, - mem::MaybeUninit, + fs, os::unix::ffi::OsStrExt, path::Path, + ptr::NonNull, slice, }; @@ -260,10 +260,13 @@ unsafe extern "C" fn page_get_text( rect: zathura_rectangle_s, res: *mut ZathuraResult, ) -> *mut i8 { - let res = if res.is_null() { - &mut ZathuraResult::OK + let res = if let Some(mut r) = NonNull::new(res) { + unsafe { + r.write(ZathuraResult::Unknown); + r.as_mut() + } } else { - unsafe { &mut *(res as *mut MaybeUninit) }.write(ZathuraResult::Unknown) + &mut ZathuraResult::OK }; let typst_page: &Page = unsafe { &*(data as *mut _) }; @@ -299,10 +302,13 @@ unsafe extern "C" fn page_get_selection( rect: zathura_rectangle_s, res: *mut ZathuraResult, ) -> *mut girara_list_t { - let res = if res.is_null() { - &mut ZathuraResult::OK + let res = if let Some(mut r) = NonNull::new(res) { + unsafe { + r.write(ZathuraResult::Unknown); + r.as_mut() + } } else { - unsafe { &mut *(res as *mut MaybeUninit) }.write(ZathuraResult::Unknown) + &mut ZathuraResult::OK }; let typst_page: &Page = unsafe { &*(data as *mut _) }; @@ -345,6 +351,5 @@ unsafe extern "C" fn page_get_selection( } // TODO: render warnings -// TODO: PDF as attachment // TODO: link/... handling // TODO: better caching