diff options
author | Jon Santmyer <jon@jonsantmyer.com> | 2021-12-11 18:06:41 -0500 |
---|---|---|
committer | Jon Santmyer <jon@jonsantmyer.com> | 2021-12-11 18:06:41 -0500 |
commit | 1b5cc0d201dc317935fb7585aa54e1489bee1caf (patch) | |
tree | 05901421c4a0c675bf89cc84ef027becb55c3078 | |
parent | 0170e838d18369c10439c25720e11a79d65c4bff (diff) | |
download | diheap-1b5cc0d201dc317935fb7585aa54e1489bee1caf.tar.gz diheap-1b5cc0d201dc317935fb7585aa54e1489bee1caf.tar.bz2 diheap-1b5cc0d201dc317935fb7585aa54e1489bee1caf.zip |
add function to resize heap
-rw-r--r-- | heap.c | 6 | ||||
-rw-r--r-- | heap.h | 4 |
2 files changed, 10 insertions, 0 deletions
@@ -70,6 +70,12 @@ heap_create(struct heap *heap, uintptr_t at, size_t len) return 0; } +void +heap_resize(struct heap *heap, size_t newsize) +{ + heap->size = newsize; +} + struct bucket* __heap_bucket_findbest(struct heap *heap, size_t size) { @@ -133,6 +133,10 @@ struct heap * */ int heap_create(struct heap *heap, uintptr_t at, size_t len); +/* Expands the heap's allocation area. Does not support reallocations + * */ +void heap_resize(struct heap *heap, size_t newsize); + /* Allocates a block of memory atleast [size] bytes long in heap * */ void *heap_alloc(struct heap *heap, size_t size); |