diff --git a/arrow/src/buffer/immutable.rs b/arrow/src/buffer/immutable.rs index cd6a2a3c1305..f4aeae9c5ac0 100644 --- a/arrow/src/buffer/immutable.rs +++ b/arrow/src/buffer/immutable.rs @@ -55,8 +55,8 @@ impl Buffer { /// Initializes a [Buffer] from a slice of items. pub fn from_slice_ref>(items: &T) -> Self { let slice = items.as_ref(); - let len = slice.len(); - let mut buffer = MutableBuffer::with_capacity(len); + let capacity = slice.len() * std::mem::size_of::(); + let mut buffer = MutableBuffer::with_capacity(capacity); buffer.extend_from_slice(slice); buffer.into() }