Further bugfix for array concatenation

This commit is contained in:
Bruce Hill 2024-12-02 15:21:29 -05:00
parent 44d8d553df
commit c6bcb05a4e

View File

@ -485,11 +485,12 @@ public Array_t Array$concat(Array_t x, Array_t y, int64_t padded_item_size)
memcpy(data + i*padded_item_size, x.data + i*padded_item_size, (size_t)padded_item_size);
}
void *dest = data + padded_item_size*x.length;
if (y.stride == padded_item_size) {
memcpy(data + padded_item_size*x.length, y.data, (size_t)(padded_item_size*y.length));
memcpy(dest, y.data, (size_t)(padded_item_size*y.length));
} else {
for (int64_t i = 0; i < y.length; i++)
memcpy(data + (x.length + i)*padded_item_size, y.data + i*padded_item_size, (size_t)padded_item_size);
memcpy(dest + i*padded_item_size, y.data + i*y.stride, (size_t)padded_item_size);
}
return (Array_t){