diff options
Diffstat (limited to 'source/blender/blenlib/BLI_array.hh')
-rw-r--r-- | source/blender/blenlib/BLI_array.hh | 8 |
1 files changed, 2 insertions, 6 deletions
diff --git a/source/blender/blenlib/BLI_array.hh b/source/blender/blenlib/BLI_array.hh index 9732f43a268..18f9aad1000 100644 --- a/source/blender/blenlib/BLI_array.hh +++ b/source/blender/blenlib/BLI_array.hh @@ -89,7 +89,7 @@ class Array { /** * Create a new array that contains copies of all values. */ - Array(Span<T> values) + Array(Span<T> values, Allocator allocator = {}) : allocator_(allocator) { size_ = values.size(); data_ = this->get_buffer_for_size(values.size()); @@ -147,12 +147,8 @@ class Array { data_ = this->get_buffer_for_size(size); } - Array(const Array &other) : allocator_(other.allocator_) + Array(const Array &other) : Array(other.as_span(), other.allocator_) { - size_ = other.size(); - - data_ = this->get_buffer_for_size(other.size()); - uninitialized_copy_n(other.data(), size_, data_); } Array(Array &&other) noexcept : allocator_(other.allocator_) |