2007-10-16 Dan Williams <dcbw@redhat.com>

* src/nm-hal-manager.c
		- (killswitch_getpower_reply, nm_hal_manager_destroy): only print out
			killswitch error messages once



git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@2981 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
This commit is contained in:
Dan Williams 2007-10-16 19:49:49 +00:00
parent 9f255cf493
commit 0c6c18a9b6
2 changed files with 26 additions and 8 deletions

View file

@ -1,3 +1,9 @@
2007-10-16 Dan Williams <dcbw@redhat.com>
* src/nm-hal-manager.c
- (killswitch_getpower_reply, nm_hal_manager_destroy): only print out
killswitch error messages once
2007-10-16 Dan Williams <dcbw@redhat.com>
* src/nm-manager.c

View file

@ -24,6 +24,7 @@ struct _NMHalManager {
/* Killswitch handling */
GSList *killswitch_list;
guint32 killswitch_poll_id;
char *kswitch_err;
};
/* Device creators */
@ -344,7 +345,15 @@ killswitch_getpower_reply (DBusGProxy *proxy,
if (!info->changed && info->initial_state != (status == 0) ? FALSE : TRUE)
info->changed = TRUE;
} else {
nm_warning ("Error getting killswitch power: %s.", err->message);
const char *prev_err = info->manager->kswitch_err;
/* Only print the error if we haven't seen it before */
if ( err->message
&& (!prev_err || strcmp (prev_err, err->message) != 0)) {
nm_warning ("Error getting killswitch power: %s.", err->message);
g_free (info->manager->kswitch_err);
info->manager->kswitch_err = g_strdup (err->message);
}
g_error_free (err);
}
}
@ -654,12 +663,15 @@ destroy_creator (gpointer data, gpointer user_data)
void
nm_hal_manager_destroy (NMHalManager *manager)
{
if (manager) {
g_slist_foreach (manager->device_creators, destroy_creator, NULL);
g_slist_free (manager->device_creators);
if (!manager)
return;
hal_deinit (manager);
g_object_unref (manager->nm_manager);
g_slice_free (NMHalManager, manager);
}
g_free (manager->kswitch_err);
g_slist_foreach (manager->device_creators, destroy_creator, NULL);
g_slist_free (manager->device_creators);
hal_deinit (manager);
g_object_unref (manager->nm_manager);
g_slice_free (NMHalManager, manager);
}