diff options
Diffstat (limited to 'src/free_list.c')
| -rw-r--r-- | src/free_list.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/src/free_list.c b/src/free_list.c index 0ecb23f..bc93196 100644 --- a/src/free_list.c +++ b/src/free_list.c @@ -60,6 +60,7 @@ void fl_coalesce_nodes(free_nd *free_list) { for (free_nd *nd = free_list; nd; nd = nd->next) { if ((size_t)nd + sizeof(header) + nd->size == (size_t)nd->next) { nd->size += sizeof(header) + nd->next->size; + ((header *)((void *)nd - sizeof(header)))->size += sizeof(header) + nd->next->size; nd->next = nd->next->next; } } |