X-Git-Url: http://git.meshlink.io/?a=blobdiff_plain;f=avahi-daemon%2Fdbus-domain-browser.c;h=e51996f7de74b9d3be9950741f1cbbf9b7e9b947;hb=53e47a32e490f6f45a0e4382f5e9c6e38a273436;hp=8c698b0714a82c1a0c2fccf34e93a05d9341f50a;hpb=908e491f7d55209acfbb2595ab1ef5b24502d641;p=catta diff --git a/avahi-daemon/dbus-domain-browser.c b/avahi-daemon/dbus-domain-browser.c index 8c698b0..e51996f 100644 --- a/avahi-daemon/dbus-domain-browser.c +++ b/avahi-daemon/dbus-domain-browser.c @@ -44,8 +44,8 @@ void avahi_dbus_domain_browser_free(DomainBrowserInfo *i) { AVAHI_LLIST_REMOVE(DomainBrowserInfo, domain_browsers, i->client->domain_browsers, i); + assert(i->client->n_objects >= 1); i->client->n_objects--; - assert(i->client->n_objects >= 0); avahi_free(i); } @@ -67,7 +67,7 @@ DBusHandlerResult avahi_dbus_msg_domain_browser_impl(DBusConnection *c, DBusMess /* Introspection */ if (dbus_message_is_method_call(m, DBUS_INTERFACE_INTROSPECTABLE, "Introspect")) - return avahi_dbus_handle_introspect(c, m, "DomainBrowser.introspect"); + return avahi_dbus_handle_introspect(c, m, "org.freedesktop.Avahi.DomainBrowser.xml"); /* Access control */ if (strcmp(dbus_message_get_sender(m), i->client->name)) @@ -109,6 +109,11 @@ void avahi_dbus_domain_browser_callback(AvahiSDomainBrowser *b, AvahiIfIndex int m = dbus_message_new_signal(i->path, AVAHI_DBUS_INTERFACE_DOMAIN_BROWSER, avahi_dbus_map_browse_signal_name(event)); + if (!m) { + avahi_log_error("Failed allocate message"); + return; + } + if (event == AVAHI_BROWSER_NEW || event == AVAHI_BROWSER_REMOVE) { assert(domain); dbus_message_append_args( @@ -125,4 +130,3 @@ void avahi_dbus_domain_browser_callback(AvahiSDomainBrowser *b, AvahiIfIndex int dbus_connection_send(server->bus, m, NULL); dbus_message_unref(m); } -