summaryrefslogtreecommitdiff
path: root/libpurple/account.c
diff options
context:
space:
mode:
authorGary Kramlich <grim@reaperworld.com>2008-11-02 10:54:00 +0000
committerGary Kramlich <grim@reaperworld.com>2008-11-02 10:54:00 +0000
commita32997842e49ac0f4deaf3bfe0aa00622f41883b (patch)
treee790398f1ff02ef8efa25406fbadace15b744803 /libpurple/account.c
parent22c0ddc34523bfb0dc45637dbd74d250ad776c46 (diff)
downloadpidgin-a32997842e49ac0f4deaf3bfe0aa00622f41883b.tar.gz
Finish off the libpurple updates for the hidden blist structs
Diffstat (limited to 'libpurple/account.c')
-rw-r--r--libpurple/account.c21
1 files changed, 13 insertions, 8 deletions
diff --git a/libpurple/account.c b/libpurple/account.c
index 8196e266b6..640f29e7f3 100644
--- a/libpurple/account.c
+++ b/libpurple/account.c
@@ -2249,7 +2249,9 @@ purple_account_add_buddies(PurpleAccount *account, GList *buddies)
/* Make a list of what group each buddy is in */
for (cur = buddies; cur != NULL; cur = cur->next) {
PurpleBlistNode *node = cur->data;
- groups = g_list_append(groups, node->parent->parent);
+ PurpleBlistNode *parent = purple_blist_node_get_parent(node);
+ PurpleBlistNode *gparent = purple_blist_node_get_parent(parent);
+ groups = g_list_append(groups, gparent);
}
if (prpl_info->add_buddies != NULL)
@@ -2499,23 +2501,26 @@ purple_accounts_delete(PurpleAccount *account)
purple_accounts_remove(account);
/* Remove this account's buddies */
- for (gnode = purple_get_blist()->root; gnode != NULL; gnode = gnode->next) {
+ for (gnode = purple_blist_get_root();
+ gnode != NULL;
+ gnode = purple_blist_node_get_sibling_next(gnode))
+ {
if (!PURPLE_BLIST_NODE_IS_GROUP(gnode))
continue;
- cnode = gnode->child;
+ cnode = purple_blist_node_get_first_child(gnode);
while (cnode) {
- PurpleBlistNode *cnode_next = cnode->next;
+ PurpleBlistNode *cnode_next = purple_blist_node_get_sibling_next(cnode);
if(PURPLE_BLIST_NODE_IS_CONTACT(cnode)) {
- bnode = cnode->child;
+ bnode = purple_blist_node_get_first_child(cnode);
while (bnode) {
- PurpleBlistNode *bnode_next = bnode->next;
+ PurpleBlistNode *bnode_next = purple_blist_node_get_sibling_next(bnode);
if (PURPLE_BLIST_NODE_IS_BUDDY(bnode)) {
PurpleBuddy *b = (PurpleBuddy *)bnode;
- if (b->account == account)
+ if (purple_buddy_get_account(b) == account)
purple_blist_remove_buddy(b);
}
bnode = bnode_next;
@@ -2523,7 +2528,7 @@ purple_accounts_delete(PurpleAccount *account)
} else if (PURPLE_BLIST_NODE_IS_CHAT(cnode)) {
PurpleChat *c = (PurpleChat *)cnode;
- if (c->account == account)
+ if (purple_chat_get_account(c) == account)
purple_blist_remove_chat(c);
}
cnode = cnode_next;