From: Timo Sirainen Date: Mon, 18 Jan 2021 12:46:55 +0000 (+0100) Subject: lib: test-buffer - Fix memory leak errors in fatal buffer tests X-Git-Tag: 2.3.14.rc1~96 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=77702eda2b7bf2430d1e2d9ed442db965543284e;p=thirdparty%2Fdovecot%2Fcore.git lib: test-buffer - Fix memory leak errors in fatal buffer tests --- diff --git a/src/lib/test-buffer.c b/src/lib/test-buffer.c index 9d9f02e5dd..0574cef1a4 100644 --- a/src/lib/test-buffer.c +++ b/src/lib/test-buffer.c @@ -336,6 +336,11 @@ void test_buffer(void) test_buffer_replace(); } +static void fatal_buffer_free(buffer_t *buf) +{ + buffer_free(&buf); +} + enum fatal_test_state fatal_buffer(unsigned int stage) { buffer_t *buf; @@ -346,11 +351,13 @@ enum fatal_test_state fatal_buffer(unsigned int stage) buf = buffer_create_dynamic_max(default_pool, 1, 5); buffer_append(buf, "12345", 5); test_expect_fatal_string("Buffer write out of range"); + test_fatal_set_callback(fatal_buffer_free, buf); buffer_append_c(buf, 'x'); return FATAL_TEST_FAILURE; case 1: buf = buffer_create_dynamic_max(default_pool, 1, 5); test_expect_fatal_string("Buffer write out of range"); + test_fatal_set_callback(fatal_buffer_free, buf); buffer_append(buf, "123456", 6); return FATAL_TEST_FAILURE; default: