1 use std::ffi::CStr; 2 use std::os::raw::c_char; 3 4 #[allow(clippy::not_unsafe_ptr_arg_deref)] c_string_to_string(cstr: *const c_char) -> String5pub fn c_string_to_string(cstr: *const c_char) -> String { 6 if cstr.is_null() { 7 return String::from(""); 8 } 9 10 let res = unsafe { CStr::from_ptr(cstr).to_str() }; 11 assert!(res.is_ok()); 12 String::from(res.unwrap_or("")) 13 } 14