diff libpurple/blist.c @ 27578:3bb1085235d0

propagate from branch 'im.pidgin.pidgin' (head 90138fae4d2350d166f730736ecea9ee8e20ecdb) to branch 'im.pidgin.cpw.darkrain42.roster' (head 04af1d94534183574e72b50b268b425b4cac2a33)
author Paul Aurich <paul@darkrain42.org>
date Sun, 12 Jul 2009 02:56:06 +0000
parents 6d26258e9f1d cbee8aecc90a
children c7812bda30f1
line wrap: on
line diff
--- a/libpurple/blist.c	Mon Jul 06 04:37:41 2009 +0000
+++ b/libpurple/blist.c	Sun Jul 12 02:56:06 2009 +0000
@@ -3103,6 +3103,8 @@
 		purple_blist_sync();
 	}
 
+	purple_blist_destroy();
+
 	node = purple_blist_get_root();
 	while (node) {
 		next_node = node->next;
@@ -3110,10 +3112,14 @@
 		node = next_node;
 	}
 	purplebuddylist->root = NULL;
-	
+
 	g_hash_table_destroy(purplebuddylist->buddies);
 	g_hash_table_destroy(buddies_cache);
 
+	PURPLE_DBUS_UNREGISTER_POINTER(purplebuddylist);
+	g_free(purplebuddylist);
+	purplebuddylist = NULL;
+
 	purple_signals_disconnect_by_handle(purple_blist_get_handle());
 	purple_signals_unregister_by_instance(purple_blist_get_handle());
 }