X-Git-Url: http://git.meshlink.io/?a=blobdiff_plain;f=avahi-client%2Fresolver.c;h=37965cef482a78349b667d7c052efd08bf68fc0c;hb=9b2a5e5954a331006e1e7bb56cccf7fff0b7d477;hp=889088f3a2b772ecf771443d2ed0230f4054e131;hpb=bb14e0a8aa3173c8a6d80b1a9c8b300a452ee9f1;p=catta diff --git a/avahi-client/resolver.c b/avahi-client/resolver.c index 889088f..37965ce 100644 --- a/avahi-client/resolver.c +++ b/avahi-client/resolver.c @@ -140,12 +140,13 @@ DBusHandlerResult avahi_service_resolver_event (AvahiClient *client, AvahiResolv dbus_message_iter_get_basic(&iter, &flags); assert(address); - if (!avahi_address_parse(address, (AvahiProtocol) aprotocol, &a)) { - fprintf(stderr, "Failed to parse address\n"); - goto fail; - } + + if (address[0] == 0) + address = NULL; + else + avahi_address_parse(address, (AvahiProtocol) aprotocol, &a); - r->callback(r, (AvahiIfIndex) interface, (AvahiProtocol) protocol, AVAHI_RESOLVER_FOUND, name, type, domain, host, &a, port, strlst, (AvahiLookupResultFlags) flags, r->userdata); + r->callback(r, (AvahiIfIndex) interface, (AvahiProtocol) protocol, AVAHI_RESOLVER_FOUND, name, type, domain, host, address ? &a : NULL, port, strlst, (AvahiLookupResultFlags) flags, r->userdata); avahi_string_list_free(strlst); break;