| @@ -10,8 +10,8 @@ fn required_data_size_inner(array: &ArrayData, next_offset: &mut usize) { | |||||
| let layout = arrow::array::layout(array.data_type()); | let layout = arrow::array::layout(array.data_type()); | ||||
| for (buffer, spec) in array.buffers().iter().zip(&layout.buffers) { | for (buffer, spec) in array.buffers().iter().zip(&layout.buffers) { | ||||
| // consider alignment padding | // consider alignment padding | ||||
| if let BufferSpec::FixedWidth { alignment, .. } = spec { | |||||
| *next_offset = (*next_offset + alignment - 1) / alignment * alignment; | |||||
| if let BufferSpec::FixedWidth { alignment, .. } = *spec { | |||||
| *next_offset = (*next_offset).div_ceil(alignment) * alignment; | |||||
| } | } | ||||
| *next_offset += buffer.len(); | *next_offset += buffer.len(); | ||||
| } | } | ||||
| @@ -41,8 +41,8 @@ fn copy_array_into_sample_inner( | |||||
| *next_offset, | *next_offset, | ||||
| ); | ); | ||||
| // add alignment padding | // add alignment padding | ||||
| if let BufferSpec::FixedWidth { alignment, .. } = spec { | |||||
| *next_offset = (*next_offset + alignment - 1) / alignment * alignment; | |||||
| if let BufferSpec::FixedWidth { alignment, .. } = *spec { | |||||
| *next_offset = (*next_offset).div_ceil(alignment) * alignment; | |||||
| } | } | ||||
| target_buffer[*next_offset..][..len].copy_from_slice(buffer.as_slice()); | target_buffer[*next_offset..][..len].copy_from_slice(buffer.as_slice()); | ||||