Builds a `&[u8]` from an FFI `(ptr, len)`, empty on null or zero length, `from_raw_parts` would UB on either. */
(ptr: *const u8, len: u32)
| 137 | |
| 138 | /* Builds a `&[u8]` from an FFI `(ptr, len)`, empty on null or zero length, `from_raw_parts` would UB on either. */ |
| 139 | pub(super) unsafe fn safe_bytes<'a>(ptr: *const u8, len: u32) -> &'a [u8] { |
| 140 | if ptr.is_null() || len == 0 { return &[]; } |
| 141 | unsafe { core::slice::from_raw_parts(ptr, len as usize) } |
| 142 | } |
| 143 | |
| 144 | /* Same for `&[u32]` argv arrays. */ |
| 145 | pub(super) unsafe fn safe_handles<'a>(ptr: *const u32, len: u32) -> &'a [u32] { |
no outgoing calls
no test coverage detected