Use of the internal _dbus_message_set_sender() function in
test-dbus-watch resulted in message structures that were not completely
freed, which caused error reports when ELL was configured with
--enable-asan. Manually clearing the message sender resolves the
problem.
---
unit/test-dbus-watch.c | 4 ++++
1 file changed, 4 insertions(+)
diff --git a/unit/test-dbus-watch.c b/unit/test-dbus-watch.c
index 6b7bcda..c6e4a92 100644
--- a/unit/test-dbus-watch.c
+++ b/unit/test-dbus-watch.c
@@ -228,6 +228,7 @@ static void test_filter_tree(const void *test_data)
"", ":1.101");
_dbus_message_set_sender(message, DBUS_SERVICE_DBUS);
_dbus_filter_dispatch(message, filter);
+ _dbus_message_set_sender(message, NULL);
l_dbus_message_unref(message);
message = _dbus_message_new_signal(2, DBUS_PATH_DBUS,
@@ -236,12 +237,14 @@ static void test_filter_tree(const void *test_data)
l_dbus_message_set_arguments(message, "");
_dbus_message_set_sender(message, DBUS_SERVICE_DBUS);
_dbus_filter_dispatch(message, filter);
+ _dbus_message_set_sender(message, NULL);
l_dbus_message_unref(message);
message = _dbus_message_new_signal(2, DBUS_PATH_DBUS, "foo",
"Bar");
l_dbus_message_set_arguments(message, "");
_dbus_message_set_sender(message, DBUS_SERVICE_DBUS);
_dbus_filter_dispatch(message, filter);
+ _dbus_message_set_sender(message, NULL);
l_dbus_message_unref(message);
message = _dbus_message_new_signal(2, "/", "foo", "Bar");
@@ -251,6 +254,7 @@ static void test_filter_tree(const void *test_data)
_dbus_message_set_sender(message, "org.bar");
_dbus_filter_dispatch(message, filter);
+ _dbus_message_set_sender(message, NULL);
l_dbus_message_unref(message);
assert(test.calls[0] == 3 && test.calls[1] == 2 &&
--
2.13.2
Show replies by date
Hi Mat,
Use of the internal _dbus_message_set_sender() function in
test-dbus-watch resulted in message structures that were not completely
freed, which caused error reports when ELL was configured with
--enable-asan. Manually clearing the message sender resolves the
problem.
---
unit/test-dbus-watch.c | 4 ++++
1 file changed, 4 insertions(+)
patch has been applied.
Regards
Marcel