diff --git a/src/heap.c b/src/heap.c index 8bf2f06..c108903 100644 --- a/src/heap.c +++ b/src/heap.c @@ -283,5 +283,5 @@ void heap_free(heap_t* heap) (*heap)->destory(*heap); free(*heap); } - heap = NULL; + *heap = NULL; } diff --git a/src/list.c b/src/list.c index 93ce908..6002c52 100644 --- a/src/list.c +++ b/src/list.c @@ -227,5 +227,5 @@ void list_free(list_t* list) (*list)->destory(*list); free(*list); } - list = NULL; + *list = NULL; } diff --git a/src/queue.c b/src/queue.c index b92c6a6..8424df9 100644 --- a/src/queue.c +++ b/src/queue.c @@ -347,5 +347,5 @@ void queue_free(queue_t* queue) (*queue)->destory(*queue); free(*queue); } - queue = NULL; + *queue = NULL; } diff --git a/src/tree.c b/src/tree.c index bdc4296..d78c9b8 100644 --- a/src/tree.c +++ b/src/tree.c @@ -1539,5 +1539,5 @@ void tree_free(tree_t* tree) (*tree)->destory(*tree); free(*tree); } - tree = NULL; + *tree = NULL; } diff --git a/test/demo_queue.c b/test/demo_queue.c new file mode 100644 index 0000000..22519c0 --- /dev/null +++ b/test/demo_queue.c @@ -0,0 +1,27 @@ +/** + * @file demo_queue.c + * @author wenjf (Orig5826@163.com) + * @brief + * @version 0.1 + * @date 2024-08-28 + * + * @copyright Copyright (c) 2024 + * + */ +#include "test.h" + +static void test_queue_destory(void) +{ + queue_t queue = NULL; + queue = queue_new(); + TEST_ASSERT_TRUE(queue_init(queue, sizeof(int))); + TEST_ASSERT_NOT_NULL(queue); + + queue_free(&queue); + TEST_ASSERT_NULL(queue); +} + +void test_queue(void) +{ + RUN_TEST(test_queue_destory); +} diff --git a/test/test.c b/test/test.c index a282e6a..241361a 100644 --- a/test/test.c +++ b/test/test.c @@ -74,6 +74,7 @@ int main(int argc, char const *argv[]) UNITY_BEGIN(); test_stack(); + test_queue(); UNITY_END(); return 0;