You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
37 lines
1.3 KiB
37 lines
1.3 KiB
From 68550741351080ab8458d54a6900b2b6ea1ef511 Mon Sep 17 00:00:00 2001 |
|
From: =?UTF-8?q?Cristian=20Rodr=C3=ADguez?= <crrodriguez@opensuse.org> |
|
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);
|
|
|