Mercurial > pidgin.yaz
diff src/list.c @ 4701:ac7ca2bd6d4f
[gaim-migrate @ 5012]
now groups go away when they're empty, like you would think they should.
also fixes a segfault if someone signs on and off very quickly.
committer: Tailor Script <tailor@pidgin.im>
author | Nathan Walp <nwalp@pidgin.im> |
---|---|
date | Tue, 11 Mar 2003 03:59:42 +0000 |
parents | 4bdd9a5fd026 |
children | 06e8e5858121 |
line wrap: on
line diff
--- a/src/list.c Tue Mar 11 02:19:50 2003 +0000 +++ b/src/list.c Tue Mar 11 03:59:42 2003 +0000 @@ -1283,3 +1283,41 @@ { return blist_ui_ops; } + +int gaim_blist_get_group_size(struct group *group, gboolean offline) { + GaimBlistNode *node; + int count = 0; + + if(!group) + return 0; + + for(node = group->node.child; node; node = node->next) { + if(GAIM_BLIST_NODE_IS_BUDDY(node)) { + struct buddy *b = (struct buddy *)node; + if(b->account->gc || offline) + count++; + } + } + + return count; +} + +int gaim_blist_get_group_online_count(struct group *group) { + GaimBlistNode *node; + int count = 0; + + if(!group) + return 0; + + for(node = group->node.child; node; node = node->next) { + if(GAIM_BLIST_NODE_IS_BUDDY(node)) { + struct buddy *b = (struct buddy *)node; + if(b->present) + count++; + } + } + + return count; +} + +