src/gtkblist.c

changeset 8252
15c6f400498a
parent 8235
00045afab151
child 8254
3b3d86ef983b
--- a/src/gtkblist.c	Fri Feb 13 05:56:17 2004 +0000
+++ b/src/gtkblist.c	Fri Feb 13 07:48:19 2004 +0000
@@ -3065,17 +3065,17 @@
 	g_timeout_add(0, (GSourceFunc)do_selection_changed, new_selection);
 }
 
-static void insert_node(GaimBuddyList *list, GaimBlistNode *node, GtkTreeIter *iter)
+static gboolean insert_node(GaimBuddyList *list, GaimBlistNode *node, GtkTreeIter *iter)
 {
 	GtkTreeIter parent_iter, cur, *curptr = NULL;
 	struct _gaim_gtk_blist_node *gtknode = node->ui_data;
 	GtkTreePath *newpath;
 
 	if(!gtknode || !iter)
-		return;
+		return FALSE;
 
 	if(node->parent && !get_iter_from_node(node->parent, &parent_iter))
-		return;
+		return FALSE;
 
 	if(get_iter_from_node(node, &cur))
 		curptr = &cur;
@@ -3115,6 +3115,7 @@
 		}
 	}
 
+	return TRUE;
 }
 
 static void gaim_gtk_blist_update_group(GaimBuddyList *list, GaimBlistNode *node)
@@ -3134,7 +3135,8 @@
 		char *mark, *esc;
 		GtkTreeIter iter;
 
-		insert_node(list, node, &iter);
+		if(!insert_node(list, node, &iter))
+			return;
 
 		esc = g_markup_escape_text(group->name, -1);
 		if(gaim_prefs_get_bool("/gaim/gtk/blist/show_group_count")) {
@@ -3246,7 +3248,8 @@
 			 gaim_prefs_get_bool("/gaim/gtk/blist/show_offline_buddies")))) {
 		GtkTreeIter iter;
 
-		insert_node(list, node, &iter);
+		if(!insert_node(list, node, &iter))
+			return;
 
 		if(gtknode->contact_expanded) {
 			GdkPixbuf *status;
@@ -3298,7 +3301,9 @@
 			 gaim_prefs_get_bool("/gaim/gtk/blist/show_offline_buddies")))) {
 		GtkTreeIter iter;
 
-		insert_node(list, node, &iter);
+		if(!insert_node(list, node, &iter))
+			return;
+
 		buddy_node(buddy, &iter, node);
 
 	} else {
@@ -3323,7 +3328,8 @@
 		GdkPixbuf *status;
 		char *mark;
 
-		insert_node(list, node, &iter);
+		if(!insert_node(list, node, &iter))
+			return;
 
 		status = gaim_gtk_blist_get_status_icon(node,
 				(gaim_prefs_get_bool("/gaim/gtk/blist/show_buddy_icons") ?

mercurial