summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--configure.ac2
-rw-r--r--src/zeroconf/ZeroconfAvahi.cxx4
-rw-r--r--valgrind.suppressions28
3 files changed, 5 insertions, 29 deletions
diff --git a/configure.ac b/configure.ac
index 689c0b40a..45e427c8f 100644
--- a/configure.ac
+++ b/configure.ac
@@ -825,7 +825,7 @@ avahi)
;;
esac
-MPD_AUTO_PKG(avahi, AVAHI, [avahi-client],
+MPD_AUTO_PKG(avahi, AVAHI, [avahi-client dbus-1],
[avahi client library], [avahi-client not found])
if test x$enable_avahi = xyes; then
AC_DEFINE([HAVE_AVAHI], 1, [Define to enable Avahi Zeroconf support])
diff --git a/src/zeroconf/ZeroconfAvahi.cxx b/src/zeroconf/ZeroconfAvahi.cxx
index 8cd09cbed..35f3dc9dc 100644
--- a/src/zeroconf/ZeroconfAvahi.cxx
+++ b/src/zeroconf/ZeroconfAvahi.cxx
@@ -34,6 +34,8 @@
#include <avahi-common/malloc.h>
#include <avahi-common/error.h>
+#include <dbus/dbus.h>
+
static constexpr Domain avahi_domain("avahi");
static char *avahiName;
@@ -272,4 +274,6 @@ AvahiDeinit(void)
avahi_free(avahiName);
avahiName = nullptr;
+
+ dbus_shutdown();
}
diff --git a/valgrind.suppressions b/valgrind.suppressions
index 308427fdd..d35e8d7e8 100644
--- a/valgrind.suppressions
+++ b/valgrind.suppressions
@@ -297,34 +297,6 @@
fun:dlclose
}
-# is that a leak in libdbus?
-
-{
- <insert a suppression name here>
- Memcheck:Leak
- fun:?alloc
- ...
- obj:*/libdbus-*.so.*
- fun:avahi_client_new
-}
-
-{
- <insert a suppression name here>
- Memcheck:Leak
- fun:malloc
- obj:/usr/lib/libdbus-1.so.3.4.0
- fun:dbus_message_new_error
- obj:/usr/lib/libdbus-1.so.3.4.0
- fun:dbus_connection_send_with_reply
- fun:dbus_connection_send_with_reply_and_block
- obj:/usr/lib/libavahi-client.so.3.2.4
- fun:avahi_entry_group_new
- fun:avahiRegisterService
- fun:avahiClientCallback
- obj:/usr/lib/libavahi-client.so.3.2.4
- fun:avahi_client_new
-}
-
{
inet_ntoa
Memcheck:Leak