From 679625c34e267c6c2bb5bd05728a7a12749ff5e6 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 2735e6b..4c7e088 100644 --- a/tests/test_malloc.c +++ b/tests/test_malloc.c @@ -143,6 +143,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 * @@ -205,6 +214,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.40.0