From 09d4af6fff63dd112b8bb42087f14f7018e2f78c Mon Sep 17 00:00:00 2001 From: Matthew Barnes Date: Tue, 2 Oct 2007 11:54:42 +0000 Subject: ** Fixes bug #469657 2007-10-02 Matthew Barnes ** Fixes bug #469657 * addressbook/importers/evolution-ldif-importer.c: * calendar/gui/comp-editor-factory.c: * composer/e-msg-composer.c: * e-util/e-config-listener.c: * mail/em-composer-prefs.c: * mail/em-folder-tree-model.c: * mail/em-format.c: * mail/em-format-html.c: * mail/em-migrate.c: * mail/em-subscribe-editor.c: * mail/mail-component.c: * mail/mail-send-recv.c: * mail/message-list.c: * mail/importers/elm-importer.c: * plugins/exchange-operations/exchange-folder-size-display.c: * plugins/mono/mono-plugin.c: * shell/e-shell-settings-dialog.c: * tools/killev.c: * widgets/table/e-table-extras.c: * widgets/table/e-table-selection-model.c: Use destroy functions in GHashTables to simplify memory management. svn path=/trunk/; revision=34344 --- plugins/exchange-operations/ChangeLog | 7 +++++++ .../exchange-operations/exchange-folder-size-display.c | 18 ++++++++---------- plugins/mono/ChangeLog | 7 +++++++ plugins/mono/mono-plugin.c | 6 ++++-- 4 files changed, 26 insertions(+), 12 deletions(-) (limited to 'plugins') diff --git a/plugins/exchange-operations/ChangeLog b/plugins/exchange-operations/ChangeLog index 5c1bef7517..a9d05014d7 100644 --- a/plugins/exchange-operations/ChangeLog +++ b/plugins/exchange-operations/ChangeLog @@ -1,3 +1,10 @@ +2007-10-02 Matthew Barnes + + ** Fixes part of bug #469657 + + * exchange-folder-size-display.c: + Use destroy functions in GHashTables to simplify memory management. + 2007-09-27 Matthew Barnes ** Fixes part of bug #477045 diff --git a/plugins/exchange-operations/exchange-folder-size-display.c b/plugins/exchange-operations/exchange-folder-size-display.c index e377ce9cd2..c12f1872d9 100644 --- a/plugins/exchange-operations/exchange-folder-size-display.c +++ b/plugins/exchange-operations/exchange-folder-size-display.c @@ -41,13 +41,6 @@ enum { NUM_COLUMNS }; -static void -free_entries (gpointer name, gpointer value, gpointer data) -{ - g_free (name); - g_free (value); -} - static gboolean get_folder_size_func (GtkTreeModel *model, GtkTreePath *path, @@ -67,17 +60,22 @@ get_folder_size_func (GtkTreeModel *model, char * exchange_folder_size_get_val (GtkListStore *model, const char *folder_name) { - GHashTable *finfo = g_hash_table_new (g_str_hash, g_str_equal); + GHashTable *finfo; char *folder_size, *fsize; + finfo = g_hash_table_new_full ( + g_str_hash, g_str_equal, + (GDestroyNotify) g_free, + (GDestroyNotify) g_free); + gtk_tree_model_foreach (GTK_TREE_MODEL (model), get_folder_size_func, finfo); if ((fsize = g_hash_table_lookup (finfo, folder_name)) != NULL) folder_size = g_strdup (fsize); else folder_size = g_strdup ("0"); - - g_hash_table_foreach (finfo, free_entries, NULL); + + g_hash_table_destroy (finfo); return folder_size; } diff --git a/plugins/mono/ChangeLog b/plugins/mono/ChangeLog index f668070b8d..0e0b3017c1 100644 --- a/plugins/mono/ChangeLog +++ b/plugins/mono/ChangeLog @@ -1,3 +1,10 @@ +2007-10-02 Matthew Barnes + + ** Fixes part of bug #469657 + + * mono-plugin.c: + Use destroy functions in GHashTables to simplify memory management. + 2007-04-02 Sankar P * Committed on behalf of Gilles Dartiguelongue diff --git a/plugins/mono/mono-plugin.c b/plugins/mono/mono-plugin.c index a377d0aa34..d945ae5508 100644 --- a/plugins/mono/mono-plugin.c +++ b/plugins/mono/mono-plugin.c @@ -152,7 +152,6 @@ epm_finalise(GObject *o) g_free(epm->location); g_free(epm->handler); - g_hash_table_foreach(p->methods, (GHFunc)g_free, NULL); g_hash_table_destroy(p->methods); g_free(epm->priv); @@ -175,7 +174,10 @@ epm_init(GObject *o) EPlugin *ep = (EPlugin *)o; epm->priv = g_malloc0(sizeof(*epm->priv)); - epm->priv->methods = g_hash_table_new(g_str_hash, g_str_equal); + epm->priv->methods = g_hash_table_new_full( + g_str_hash, g_str_equal, + (GDestroyNotify) g_free, + (GDestroyNotify) NULL); } void * -- cgit v1.2.3