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;
+}
+
+