soc.2009.vulture: 1bcc4e8a: Initialise parent blist nodes' UI data b...

gdick at soc.pidgin.im gdick at soc.pidgin.im
Wed Aug 5 16:55:40 EDT 2009


-----------------------------------------------------------------
Revision: 1bcc4e8a8a9704ed8fce7a0c72c3c55bf6f4bf36
Ancestor: 821f6f153a17981a24a5af88be07b85184eda43b
Author: gdick at soc.pidgin.im
Date: 2009-08-05T16:53:59
Branch: im.pidgin.soc.2009.vulture
URL: http://d.pidgin.im/viewmtn/revision/info/1bcc4e8a8a9704ed8fce7a0c72c3c55bf6f4bf36

Modified files:
        vulture/purpleblist.c

ChangeLog: 

Initialise parent blist nodes' UI data before their children's. Newly-added
nodes now appear immediately.

-------------- next part --------------
============================================================
--- vulture/purpleblist.c	145a1e026730f2ecb2d3b96a2ca65b633c09b225
+++ vulture/purpleblist.c	98aa9bf2483610d73ceada0fc871483d160ea61c
@@ -90,6 +90,13 @@ void PurpleBlistUpdateNode(PurpleBuddyLi
 			const char *szNodeText;
 
 			if(lpvbn->lpvbnParent) VultureBListNodeRelease(lpvbn->lpvbnParent);
+
+			/* Parents are not necessarily initialised before
+			 * children.
+			 */
+			if(lpblistnode->parent && !lpblistnode->parent->ui_data)
+				PurpleBlistUpdateNode(lpbuddylist, lpblistnode->parent);
+
 			lpvbn->lpvbnParent = lpblistnode->parent ? (VULTURE_BLIST_NODE*)lpblistnode->parent->ui_data : NULL;
 			if(lpvbn->lpvbnParent) VultureBListNodeAddRef(lpvbn->lpvbnParent);
 


More information about the Commits mailing list