aboutsummaryrefslogtreecommitdiffstats
path: root/plugins/exchange-operations/exchange-folder-size-display.c
diff options
context:
space:
mode:
Diffstat (limited to 'plugins/exchange-operations/exchange-folder-size-display.c')
-rw-r--r--plugins/exchange-operations/exchange-folder-size-display.c18
1 files changed, 8 insertions, 10 deletions
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;
}