From 68550741351080ab8458d54a6900b2b6ea1ef511 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Cristian=20Rodr=C3=ADguez?= Date: Sat, 9 May 2015 22:14:09 -0300 Subject: [PATCH] sd-bus: fix memory leak in test-bus-chat Building with address sanitizer enabled on GCC 5.1.x a memory leak is reported because we never close the bus, fix it by using cleanup variable attribute. Cherry-picked from: 2f50a2d55bf0a8b5959a6864ae1b39e7e9e0ce08 Related: #1331667 --- src/libsystemd/sd-bus/test-bus-chat.c | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/src/libsystemd/sd-bus/test-bus-chat.c b/src/libsystemd/sd-bus/test-bus-chat.c index 8625ee6d89..a80aaaeefe 100644 --- a/src/libsystemd/sd-bus/test-bus-chat.c +++ b/src/libsystemd/sd-bus/test-bus-chat.c @@ -264,7 +264,7 @@ fail: static void* client1(void*p) { _cleanup_bus_message_unref_ sd_bus_message *reply = NULL; - sd_bus *bus = NULL; + _cleanup_bus_close_unref_ sd_bus *bus = NULL; sd_bus_error error = SD_BUS_ERROR_NULL; const char *hello; int r; @@ -347,8 +347,6 @@ finish: else sd_bus_send(bus, q, NULL); - sd_bus_flush(bus); - sd_bus_unref(bus); } sd_bus_error_free(&error);