BLI_buffer: simplify buffer resize

This commit is contained in:
2014-10-05 10:31:47 +02:00
parent a613290775
commit 15af15eb56

View File

@@ -38,17 +38,14 @@ static void *buffer_alloc(BLI_Buffer *buffer, int len)
static void *buffer_realloc(BLI_Buffer *buffer, int len) static void *buffer_realloc(BLI_Buffer *buffer, int len)
{ {
if (buffer->flag & BLI_BUFFER_USE_CALLOC) { return ((buffer->flag & BLI_BUFFER_USE_CALLOC) ?
return MEM_recallocN(buffer->data, buffer->elem_size * len); MEM_recallocN_id : MEM_reallocN_id)
} (buffer->data, buffer->elem_size * len, "BLI_Buffer.data");
else {
return MEM_reallocN(buffer->data, buffer->elem_size * len);
}
} }
void BLI_buffer_resize(BLI_Buffer *buffer, int new_count) void BLI_buffer_resize(BLI_Buffer *buffer, int new_count)
{ {
if (new_count > buffer->alloc_count) { if (UNLIKELY(new_count > buffer->alloc_count)) {
if (buffer->flag & BLI_BUFFER_USE_STATIC) { if (buffer->flag & BLI_BUFFER_USE_STATIC) {
void *orig = buffer->data; void *orig = buffer->data;
@@ -65,12 +62,7 @@ void BLI_buffer_resize(BLI_Buffer *buffer, int new_count)
buffer->alloc_count = new_count; buffer->alloc_count = new_count;
} }
if (buffer->data) { buffer->data = buffer_realloc(buffer, buffer->alloc_count);
buffer->data = buffer_realloc(buffer, buffer->alloc_count);
}
else {
buffer->data = buffer_alloc(buffer, buffer->alloc_count);
}
} }
} }