diff --git a/bootloader/mem/heap.c b/bootloader/mem/heap.c index 4971d8a..fd46c16 100644 --- a/bootloader/mem/heap.c +++ b/bootloader/mem/heap.c @@ -56,6 +56,7 @@ static u32 _heap_alloc(heap_t *heap, u32 size, u32 alignment) node->used = 1; new->used = 0; new->next = node->next; + new->next->prev = new; new->prev = node; node->next = new; diff --git a/nyx/nyx_gui/mem/heap.c b/nyx/nyx_gui/mem/heap.c index 4ccd4f8..0c49de3 100644 --- a/nyx/nyx_gui/mem/heap.c +++ b/nyx/nyx_gui/mem/heap.c @@ -56,6 +56,7 @@ static u32 _heap_alloc(heap_t *heap, u32 size, u32 alignment) node->used = 1; new->used = 0; new->next = node->next; + new->next->prev = new; new->prev = node; node->next = new;