diff --git a/headers/private/kernel/util/DoublyLinkedList.h b/headers/private/kernel/util/DoublyLinkedList.h index ce6845e3e2..25e6ee6427 100644 --- a/headers/private/kernel/util/DoublyLinkedList.h +++ b/headers/private/kernel/util/DoublyLinkedList.h @@ -528,6 +528,10 @@ DOUBLY_LINKED_LIST_CLASS_NAME::Remove(Element* element) sGetLink(elLink->next)->previous = elLink->previous; else fLast = elLink->previous; + +#if DEBUG_DOUBLY_LINKED_LIST + elLink->next = elLink->previous = NULL; +#endif } } diff --git a/src/system/kernel/util/list.cpp b/src/system/kernel/util/list.cpp index 39a30b02eb..719772a95b 100644 --- a/src/system/kernel/util/list.cpp +++ b/src/system/kernel/util/list.cpp @@ -76,9 +76,13 @@ void list_remove_link(void *_link) { list_link *link = (list_link *)_link; - + link->next->prev = link->prev; link->prev->next = link->next; + +#if DEBUG_DOUBLY_LINKED_LIST + link->prev = link->next = NULL; +#endif }