diff options
-rw-r--r-- | libempathy-gtk/empathy-theme-manager.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/libempathy-gtk/empathy-theme-manager.c b/libempathy-gtk/empathy-theme-manager.c index 4c8176b88..47ea737ff 100644 --- a/libempathy-gtk/empathy-theme-manager.c +++ b/libempathy-gtk/empathy-theme-manager.c @@ -336,7 +336,8 @@ empathy_theme_manager_get_adium_themes (void) gint i = 0; const gchar *dir; - hash = g_hash_table_new_full (g_str_hash, g_str_equal, g_free, NULL); + hash = g_hash_table_new_full (g_str_hash, g_str_equal, + g_free, (GDestroyNotify) g_hash_table_unref); /* Start from the more general locations (the system) to the more specific * ones ($HOME, EMPATHY_SRCDIR) so the more specific themes will override @@ -371,7 +372,8 @@ empathy_theme_manager_get_adium_themes (void) } /* Pass ownership of the info hash table to the list */ - result = g_list_copy (g_hash_table_get_values (hash)); + result = g_list_copy_deep (g_hash_table_get_values (hash), + (GCopyFunc) g_hash_table_ref, NULL); g_hash_table_unref (hash); |