diff --git a/spa/plugins/support/dbus.c b/spa/plugins/support/dbus.c index c1477baf0..9a08919d0 100644 --- a/spa/plugins/support/dbus.c +++ b/spa/plugins/support/dbus.c @@ -288,7 +288,8 @@ static DBusHandlerResult filter_message (DBusConnection *connection, if (dbus_message_is_signal(message, DBUS_INTERFACE_LOCAL, "Disconnected")) { spa_log_debug(impl->log, "dbus connection %p disconnected", this); - dbus_connection_unref(this->conn); + if (this->conn) + dbus_connection_unref(this->conn); this->conn = NULL; connection_emit_disconnected(this); } diff --git a/src/examples/media-session/access-portal.c b/src/examples/media-session/access-portal.c index 39eeb314d..bf6c942a6 100644 --- a/src/examples/media-session/access-portal.c +++ b/src/examples/media-session/access-portal.c @@ -289,7 +289,8 @@ static void session_destroy(void *data) static void session_dbus_disconnected(void *data) { struct impl *impl = data; - dbus_connection_unref(impl->bus); + if (impl->bus) + dbus_connection_unref(impl->bus); impl->bus = NULL; }