diff --git a/proxmox-async/src/stream/async_reader_stream.rs b/proxmox-async/src/stream/async_reader_stream.rs index caa6736a..c79468ef 100644 --- a/proxmox-async/src/stream/async_reader_stream.rs +++ b/proxmox-async/src/stream/async_reader_stream.rs @@ -8,6 +8,8 @@ use futures::ready; use futures::stream::Stream; use tokio::io::{AsyncRead, ReadBuf}; +use proxmox_io::vec; + /// Wrapper struct to convert an [AsyncRead] into a [Stream] pub struct AsyncReaderStream { reader: R, @@ -16,19 +18,11 @@ pub struct AsyncReaderStream { impl AsyncReaderStream { pub fn new(reader: R) -> Self { - let mut buffer = Vec::with_capacity(64 * 1024); - unsafe { - buffer.set_len(buffer.capacity()); - } - Self { reader, buffer } + Self::with_buffer_size(reader, 64 * 1024) } pub fn with_buffer_size(reader: R, buffer_size: usize) -> Self { - let mut buffer = Vec::with_capacity(buffer_size); - unsafe { - buffer.set_len(buffer.capacity()); - } - Self { reader, buffer } + Self { reader, buffer: vec::undefined(buffer_size) } } }