X-Git-Url: http://git.meshlink.io/?a=blobdiff_plain;f=avahi-gobject%2Fga-entry-group.c;h=101acbffbea5bb31047dd5b581f81553e24c5978;hb=7a5b2f69af7d36d6cd4153142f125fa011784e03;hp=1a17fd42f4a36d53fc2c25b9372f93407f9bf9de;hpb=58ee9d8c85293eefa1e901c660fb30bf2b9122c8;p=catta diff --git a/avahi-gobject/ga-entry-group.c b/avahi-gobject/ga-entry-group.c index 1a17fd4..101acbf 100644 --- a/avahi-gobject/ga-entry-group.c +++ b/avahi-gobject/ga-entry-group.c @@ -1,6 +1,6 @@ /* * ga-entry-group.c - Source for GaEntryGroup - * Copyright (C) 2005 Collabora Ltd. + * Copyright (C) 2006-2007 Collabora Ltd. * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public @@ -185,7 +185,7 @@ static void _free_service(gpointer data) { static GQuark detail_for_state(AvahiEntryGroupState state) { static struct { - AvahiClientState state; + AvahiEntryGroupState state; const gchar *name; GQuark quark; } states[] = { @@ -556,8 +556,12 @@ gboolean ga_entry_group_service_set_arbitrary(GaEntryGroupService * service, gboolean ga_entry_group_service_remove_key(GaEntryGroupService * service, const gchar * key, GError ** error) { GaEntryGroupServicePrivate *priv = (GaEntryGroupServicePrivate *) service; + GaEntryGroupServiceEntry entry; - g_hash_table_remove(priv->entries, key); + entry.value = (void*) key; + entry.size = strlen(key); + + g_hash_table_remove(priv->entries, &entry); if (!priv->frozen) return ga_entry_group_service_thaw(service, error); @@ -570,6 +574,7 @@ gboolean ga_entry_group_attach(GaEntryGroup * group, GaClient * client, GError ** error) { GaEntryGroupPrivate *priv = GA_ENTRY_GROUP_GET_PRIVATE(group); + g_return_val_if_fail(client->avahi_client, FALSE); g_assert(priv->client == NULL || priv->client == client); g_assert(priv->group == NULL);