From b306386ca00651aad196dbbe515f20e78a13ffad Mon Sep 17 00:00:00 2001 From: Jeffrey Stedfast Date: Thu, 3 Feb 2005 18:38:28 +0000 Subject: Use g_hash_table_foreach_remove() instead so the keys don't point to 2005-02-03 Jeffrey Stedfast * message-list.c (message_list_set_folder): Use g_hash_table_foreach_remove() instead so the keys don't point to free'd values. (normalised_free): Return TRUE. svn path=/trunk/; revision=28696 --- mail/message-list.c | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) (limited to 'mail/message-list.c') diff --git a/mail/message-list.c b/mail/message-list.c index f5e3c4213e..59c08cc3ce 100644 --- a/mail/message-list.c +++ b/mail/message-list.c @@ -1846,10 +1846,12 @@ message_list_init (MessageList *message_list) g_signal_connect (((GtkScrolledWindow *) message_list)->vscrollbar, "value-changed", G_CALLBACK (ml_scrolled), message_list); } -static void +static gboolean normalised_free (gpointer key, gpointer value, gpointer user_data) { e_poolv_destroy (value); + + return TRUE; } static void @@ -1917,7 +1919,7 @@ message_list_finalise (GObject *object) MessageList *message_list = MESSAGE_LIST (object); struct _MessageListPrivate *p = message_list->priv; - g_hash_table_foreach (message_list->normalised_hash, normalised_free, NULL); + g_hash_table_foreach (message_list->normalised_hash, (GHFunc) normalised_free, NULL); g_hash_table_destroy (message_list->normalised_hash); if (message_list->thread_tree) @@ -2805,7 +2807,7 @@ message_list_set_folder (MessageList *message_list, CamelFolder *folder, const c } /* reset the normalised sort performance hack */ - g_hash_table_foreach (message_list->normalised_hash, normalised_free, NULL); + g_hash_table_foreach_remove (message_list->normalised_hash, normalised_free, NULL); mail_regen_cancel(message_list); -- cgit v1.2.3