for (;;) {
DBusMessageIter sub2;
int at;
+ const uint8_t *k;
+ int n;
if ((at = dbus_message_iter_get_arg_type(&sub)) == DBUS_TYPE_INVALID)
break;
dbus_message_iter_recurse(&sub, &sub2);
- if (dbus_message_iter_get_array_len(&sub2) > 0) {
- uint8_t *k;
- int n;
-
- dbus_message_iter_get_fixed_array(&sub2, &k, &n);
+ k = NULL; n = 0;
+ dbus_message_iter_get_fixed_array(&sub2, &k, &n);
+ if (k && n > 0)
strlst = avahi_string_list_add_arbitrary(strlst, k, n);
- }
dbus_message_iter_next(&sub);
}
dbus_error_init (&error);
- if (client->state == AVAHI_CLIENT_DISCONNECTED) {
+ if (!avahi_client_is_connected(client)) {
avahi_client_set_errno(client, AVAHI_ERR_BAD_STATE);
goto fail;
}
assert(r);
client = r->client;
- if (r->path && client->state != AVAHI_CLIENT_DISCONNECTED)
+ if (r->path && avahi_client_is_connected(client))
ret = avahi_client_simple_method_call(client, r->path, AVAHI_DBUS_INTERFACE_SERVICE_RESOLVER, "Free");
AVAHI_LLIST_REMOVE(AvahiServiceResolver, service_resolvers, client->service_resolvers, r);
dbus_error_init (&error);
- if (client->state == AVAHI_CLIENT_DISCONNECTED) {
+ if (!avahi_client_is_connected(client)) {
avahi_client_set_errno(client, AVAHI_ERR_BAD_STATE);
goto fail;
}
assert(r);
client = r->client;
- if (r->path && client->state != AVAHI_CLIENT_DISCONNECTED)
+ if (r->path && avahi_client_is_connected(client))
ret = avahi_client_simple_method_call(client, r->path, AVAHI_DBUS_INTERFACE_HOST_NAME_RESOLVER, "Free");
AVAHI_LLIST_REMOVE(AvahiHostNameResolver, host_name_resolvers, client->host_name_resolvers, r);
return NULL;
}
- if (client->state == AVAHI_CLIENT_DISCONNECTED) {
+ if (!avahi_client_is_connected(client)) {
avahi_client_set_errno(client, AVAHI_ERR_BAD_STATE);
goto fail;
}
assert(r);
client = r->client;
- if (r->path && client->state != AVAHI_CLIENT_DISCONNECTED)
+ if (r->path && avahi_client_is_connected(client))
ret = avahi_client_simple_method_call(client, r->path, AVAHI_DBUS_INTERFACE_ADDRESS_RESOLVER, "Free");
AVAHI_LLIST_REMOVE(AvahiAddressResolver, address_resolvers, client->address_resolvers, r);