changeset 7549:586fb1594072

[gaim-migrate @ 8163] " This fixes a bug someone reported a few weeks ago where a Yahoo buddy's status changes didn't appear on the buddy list immediately. Sometimes you had to click on it, etc. Nathan tells me it's been this way for eons, but I don't remember seeing this bug before. But I haven't been around for eons, so... Nathan didn't actually say I should fix it, but I did anyway, since it was annoying me." -- quoth Tim Ringenbach (marv) committer: Tailor Script <tailor@pidgin.im>
author Luke Schierer <lschiere@pidgin.im>
date Tue, 18 Nov 2003 03:07:30 +0000
parents 4c75a6bbe5df
children ebf1f580d6a9
files src/blist.c
diffstat 1 files changed, 11 insertions(+), 10 deletions(-) [+]
line wrap: on
line diff
--- a/src/blist.c	Mon Nov 17 23:59:05 2003 +0000
+++ b/src/blist.c	Tue Nov 18 03:07:30 2003 +0000
@@ -207,20 +207,21 @@
 {
 	GaimBlistUiOps *ops;
 
-	if (buddy->uc == status)
-		return;
 
 	ops = gaimbuddylist->ui_ops;
 
-	if((status & UC_UNAVAILABLE) != (buddy->uc & UC_UNAVAILABLE)) {
-		if(status & UC_UNAVAILABLE)
-			gaim_signal_emit(gaim_blist_get_handle(), "buddy-away", buddy);
-		else
-			gaim_signal_emit(gaim_blist_get_handle(), "buddy-back", buddy);
+	if (buddy->uc != status) {
+		if ((status & UC_UNAVAILABLE) != (buddy->uc & UC_UNAVAILABLE)) {
+			if (status & UC_UNAVAILABLE)
+				gaim_signal_emit(gaim_blist_get_handle(), "buddy-away", buddy);
+			else
+				gaim_signal_emit(gaim_blist_get_handle(), "buddy-back", buddy);
+		}
+
+		buddy->uc = status;
+		gaim_contact_compute_priority_buddy(gaim_buddy_get_contact(buddy));
 	}
-
-	buddy->uc = status;
-	gaim_contact_compute_priority_buddy(gaim_buddy_get_contact(buddy));
+	
 	if (ops)
 		ops->update(gaimbuddylist, (GaimBlistNode*)buddy);
 }