Details
-
Bug
-
Status: Resolved
-
Blocker
-
Resolution: Fixed
-
2.0.0
-
Ubuntu 20.04. rustc-nightly,
Description
// src/buffer.rs:657
/// Ensures that this buffer has at least `capacity` slots in this buffer. This will
/// also ensure the new capacity will be a multiple of 64 bytes.
///
/// Returns the new capacity for this buffer.
pub fn reserve(&mut self, capacity: usize) -> Result<usize> {
if capacity > self.capacity {
unsafe { memory :: reallocate(self.data, self.capacity, new_capacity) };
self.data = new_data as *mut u8;
self.capacity = new_capacity;
}
Ok(self.capacity)
}
Above code is not checking if new_data is null, which is causing segfault on following memcpy when reallocate failed.
Attachments
Issue Links
- Blocked
-
ARROW-10691 Segfault in
- Closed
- relates to
-
ARROW-11048 [Rust] Add bench to MutableBuffer
- Resolved
- links to