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 --- widgets/table/e-table-selection-model.c | 12 ++++-------- 1 file changed, 4 insertions(+), 8 deletions(-) (limited to 'widgets/table/e-table-selection-model.c') diff --git a/widgets/table/e-table-selection-model.c b/widgets/table/e-table-selection-model.c index 76983106f6..2b8ec0fa99 100644 --- a/widgets/table/e-table-selection-model.c +++ b/widgets/table/e-table-selection-model.c @@ -51,17 +51,10 @@ save_to_hash(int model_row, gpointer closure) g_hash_table_insert(etsm->hash, key, key); } -static void -free_key(gpointer key, gpointer value, gpointer closure) -{ - g_free(key); -} - static void free_hash(ETableSelectionModel *etsm) { if (etsm->hash) { - g_hash_table_foreach(etsm->hash, free_key, NULL); g_hash_table_destroy(etsm->hash); etsm->hash = NULL; } @@ -78,7 +71,10 @@ model_pre_change (ETableModel *etm, ETableSelectionModel *etsm) if (etsm->model && e_table_model_has_save_id (etsm->model)) { gint cursor_row; - etsm->hash = g_hash_table_new(g_str_hash, g_str_equal); + etsm->hash = g_hash_table_new_full( + g_str_hash, g_str_equal, + (GDestroyNotify) g_free, + (GDestroyNotify) NULL); e_selection_model_foreach(E_SELECTION_MODEL(etsm), save_to_hash, etsm); g_object_get(etsm, -- cgit v1.2.3