]> git.meshlink.io Git - catta/blobdiff - avahi-client/resolver.c
cleanup of adresss parsing on the client side
[catta] / avahi-client / resolver.c
index c51a3bec379f066236ca0e6037d5387ce9c8ca8c..37965cef482a78349b667d7c052efd08bf68fc0c 100644 (file)
@@ -140,12 +140,13 @@ DBusHandlerResult avahi_service_resolver_event (AvahiClient *client, AvahiResolv
             dbus_message_iter_get_basic(&iter, &flags);
                                     
             assert(address);
-            avahi_address_parse(address, (AvahiProtocol) aprotocol, &a);
 
             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;