diff --git a/src/backend/libc/io/syscalls.rs b/src/backend/libc/io/syscalls.rs index 45ed40b92..6cbe39ffc 100644 --- a/src/backend/libc/io/syscalls.rs +++ b/src/backend/libc/io/syscalls.rs @@ -18,19 +18,19 @@ use crate::io::ReadWriteFlags; use crate::io::{self, FdFlags}; use crate::ioctl::{IoctlOutput, RawOpcode}; use core::cmp::min; -use core::mem::MaybeUninit; #[cfg(not(any(target_os = "espidf", target_os = "horizon")))] use { crate::backend::MAX_IOV, crate::io::{IoSlice, IoSliceMut}, }; -pub(crate) fn read(fd: BorrowedFd<'_>, buf: &mut [MaybeUninit]) -> io::Result { +#[inline] +pub(crate) unsafe fn read(fd: BorrowedFd<'_>, buf: (*mut u8, usize)) -> io::Result { unsafe { ret_usize(c::read( borrowed_fd(fd), - buf.as_mut_ptr().cast(), - min(buf.len(), READ_LIMIT), + buf.0.cast(), + min(buf.1, READ_LIMIT), )) } }