From a02c06b80712cff70eb668e4872b40794275deaf Mon Sep 17 00:00:00 2001 From: Ivan Maidanski Date: Sun, 3 Dec 2017 10:14:33 +0300 Subject: [PATCH] Fix memory leak in test_malloc * tests/test_malloc.c (free_list): New function definition. * tests/test_malloc.c (run_one_test): Call free_list(x) on return. --- tests/test_malloc.c | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/tests/test_malloc.c b/tests/test_malloc.c index dca06da..1695a81 100644 --- a/tests/test_malloc.c +++ b/tests/test_malloc.c @@ -140,6 +140,15 @@ make_list(int m, int n) return cons(m, make_list(m+1, n)); } +void free_list(ln *x) +{ + while (x != NULL) { + ln *next = x -> next; + AO_free(x); + x = next; + } +} + /* Reverse list x, and concatenate it to y, deallocating no longer needed */ /* nodes in x. */ ln * @@ -202,6 +211,7 @@ void * run_one_test(void * arg) { x = reverse(x, 0); } check_list(x, 1, LIST_LENGTH); + free_list(x); return arg; /* use arg to suppress compiler warning */ } -- 2.50.1