|
@@ -40,7 +40,8 @@ void split(allocator_t *allocator, heap_t *heap, void *ptr,
|
|
heap->free_list_head = new_block;
|
|
heap->free_list_head = new_block;
|
|
}
|
|
}
|
|
|
|
|
|
- mark_free(ptr);
|
|
|
|
|
|
+ set_owner(new_block, heap);
|
|
|
|
+ mark_free(new_block);
|
|
|
|
|
|
if(allocator->border_ptr == ptr) {
|
|
if(allocator->border_ptr == ptr) {
|
|
allocator->border_ptr = new_block;
|
|
allocator->border_ptr = new_block;
|