From 37053daacb2152b4e8de6ab60705e7254df31df7 Mon Sep 17 00:00:00 2001 From: Lennart Poettering Date: Thu, 13 Oct 2005 14:29:13 +0000 Subject: * handle AVAHI_LOOKUP_NO_ADDRESS over DBUS correctly git-svn-id: file:///home/lennart/svn/public/avahi/trunk@755 941a03a8-eaeb-0310-b9a0-b1bbd8fe43fe --- avahi-client/resolver.c | 3 +++ avahi-daemon/dbus-protocol.c | 6 ++++-- 2 files changed, 7 insertions(+), 2 deletions(-) diff --git a/avahi-client/resolver.c b/avahi-client/resolver.c index 889088f..c548f01 100644 --- a/avahi-client/resolver.c +++ b/avahi-client/resolver.c @@ -144,6 +144,9 @@ DBusHandlerResult avahi_service_resolver_event (AvahiClient *client, AvahiResolv fprintf(stderr, "Failed to parse address\n"); goto fail; } + + if (address[0] == 0) + address = NULL; r->callback(r, (AvahiIfIndex) interface, (AvahiProtocol) protocol, AVAHI_RESOLVER_FOUND, name, type, domain, host, &a, port, strlst, (AvahiLookupResultFlags) flags, r->userdata); diff --git a/avahi-daemon/dbus-protocol.c b/avahi-daemon/dbus-protocol.c index 25a9e8e..bec97cd 100644 --- a/avahi-daemon/dbus-protocol.c +++ b/avahi-daemon/dbus-protocol.c @@ -1558,8 +1558,10 @@ static void async_service_resolver_callback( /* avahi_log_debug(__FILE__": [%s] Successfully resolved service <%s.%s.%s>", i->path, name, type, domain); */ - assert(a); - avahi_address_snprint(t, sizeof(t), a); + if (a) + avahi_address_snprint(t, sizeof(t), a); + else + t[0] = 0; if (!name) name = ""; -- cgit