/*
* 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
#include <string.h>
#include <avahi-common/malloc.h>
-#include "ga-errors.h"
+#include "ga-error.h"
#include "ga-entry-group.h"
#include "ga-entry-group-enumtypes.h"
domain, host, port, txt);
if (ret) {
if (error != NULL) {
- *error = g_error_new(GA_ERRORS, ret,
+ *error = g_error_new(GA_ERROR, ret,
"Adding service to group failed: %s",
avahi_strerror(ret));
}
size);
if (ret) {
if (error != NULL) {
- *error = g_error_new(GA_ERRORS, ret,
+ *error = g_error_new(GA_ERROR, ret,
"Setting raw record failed: %s",
avahi_strerror(ret));
}
service->name, service->type, service->domain, txt);
if (ret) {
if (error != NULL) {
- *error = g_error_new(GA_ERRORS, ret,
+ *error = g_error_new(GA_ERROR, ret,
"Updating txt record failed: %s",
avahi_strerror(ret));
}
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);
if (priv->group == NULL) {
if (error != NULL) {
int aerrno = avahi_client_errno(client->avahi_client);
- *error = g_error_new(GA_ERRORS, aerrno,
+ *error = g_error_new(GA_ERROR, aerrno,
"Attaching group failed: %s",
avahi_strerror(aerrno));
}
ret = avahi_entry_group_commit(priv->group);
if (ret) {
if (error != NULL) {
- *error = g_error_new(GA_ERRORS, ret,
+ *error = g_error_new(GA_ERROR, ret,
"Committing group failed: %s",
avahi_strerror(ret));
}
ret = avahi_entry_group_reset(priv->group);
if (ret) {
if (error != NULL) {
- *error = g_error_new(GA_ERRORS, ret,
+ *error = g_error_new(GA_ERROR, ret,
"Resetting group failed: %s",
avahi_strerror(ret));
}