# HG changeset patch
# User Eric Warmenhoven <eric@warmenhoven.org>
# Date 954075678 0
# Node ID af088e5b2e30e3731be8b6dc42d782b2c077ea0e
# Parent  60fa625071845f4c6dfee97a00b875df071c3648
[gaim-migrate @ 69]
Okay, I finally backtraced the problem and fixed it at its root. No more
double-logoffs, period.

committer: Tailor Script <tailor@pidgin.im>

diff -r 60fa62507184 -r af088e5b2e30 src/buddy.c
--- a/src/buddy.c	Sun Mar 26 11:37:20 2000 +0000
+++ b/src/buddy.c	Sun Mar 26 13:01:18 2000 +0000
@@ -162,7 +162,8 @@
                 while(mem) {
 			b = (struct buddy *)mem->data;
 
-                        set_buddy(b);
+                        if (b->present || !GTK_WIDGET_VISIBLE(b->item))
+				set_buddy(b);
                         
                         mem = mem->next;
                 }
@@ -1426,9 +1427,7 @@
 
 
 	} else {
-		static struct buddy *last = NULL;
-		if (GTK_WIDGET_VISIBLE(b->item) && last != b) {
-			last = b;
+		if (GTK_WIDGET_VISIBLE(b->item)) {
 			play_sound(BUDDY_LEAVE);
 			pm = gdk_pixmap_create_from_xpm_d(blist->window, &bm,
 				NULL, (gchar **)logout_icon_xpm);