Mercurial > pidgin
diff finch/gntconv.c @ 22212:6bb29f94862c
Add API so Finch doesn't need to touch the internals of PurpleBlistNode.
author | Sadrul Habib Chowdhury <imadil@gmail.com> |
---|---|
date | Sat, 26 Jan 2008 20:32:26 +0000 |
parents | c38d72677c8a |
children | 16ff37f64e29 |
line wrap: on
line diff
--- a/finch/gntconv.c Sat Jan 26 20:28:35 2008 +0000 +++ b/finch/gntconv.c Sat Jan 26 20:32:26 2008 +0000 @@ -79,7 +79,7 @@ switch (purple_conversation_get_type(conv)) { case PURPLE_CONV_TYPE_IM: node = (PurpleBlistNode*)purple_find_buddy(conv->account, conv->name); - node = node ? node->parent : NULL; + node = node ? purple_blist_node_get_parent(node) : NULL; break; case PURPLE_CONV_TYPE_CHAT: node = (PurpleBlistNode*)purple_blist_find_chat(conv->account, conv->name); @@ -236,7 +236,8 @@ if (!buddy) return NULL; - for (node = ((PurpleBlistNode*)buddy)->parent->child; node; node = node->next) { + for (node = purple_blist_node_get_first_child(purple_blist_node_get_parent((PurpleBlistNode*)buddy)); + node; node = purple_blist_node_get_sibling_next(node)) { if (node == (PurpleBlistNode*)buddy) continue; if ((ret = purple_find_conversation_with_account(PURPLE_CONV_TYPE_IM, @@ -476,7 +477,8 @@ for (; buds; buds = g_slist_delete_link(buds, buds)) { PurpleBlistNode *node = (PurpleBlistNode *)purple_buddy_get_contact((PurpleBuddy *)buds->data); - for (node = node->child; node != NULL; node = node->next) { + for (node = purple_blist_node_get_first_child(node); node != NULL; + node = purple_blist_node_get_sibling_next(node)) { PurpleBuddy *buddy = (PurpleBuddy *)node; PurpleAccount *account = purple_buddy_get_account(buddy); if (purple_account_is_connected(account)) {