diff mcabber/mcabber/screen.c @ 1821:60db836ad98a

Move some "update_roster" updates to a better place
author Mikael Berthe <mikael@lilotux.net>
date Wed, 24 Mar 2010 00:06:40 +0100
parents d13315366ba5
children 2b013c0f949a
line wrap: on
line diff
--- a/mcabber/mcabber/screen.c	Tue Mar 23 23:57:57 2010 +0100
+++ b/mcabber/mcabber/screen.c	Wed Mar 24 00:06:40 2010 +0100
@@ -2897,7 +2897,6 @@
   scr_setmsgflag_if_needed(SPECIAL_BUFFER_STATUS_ID, TRUE);
   scr_setattentionflag_if_needed(SPECIAL_BUFFER_STATUS_ID, TRUE,
                                  ROSTER_UI_PRIO_STATUS_WIN_MESSAGE, prio_max);
-  update_roster = TRUE;
 }
 
 //  scr_set_chatmode()
@@ -2945,8 +2944,10 @@
   } else {
     current_id = NULL;
   }
-  if (!chatmode || !current_id || strcmp(bjid, current_id) || iscurrentlocked)
+  if (!chatmode || !current_id || strcmp(bjid, current_id) || iscurrentlocked) {
     roster_msg_setflag(bjid, special, TRUE);
+    update_roster = TRUE;
+  }
 }
 
 //  scr_setattentionflag_if_needed(bare_jid, special, value, action)
@@ -2980,8 +2981,10 @@
     current_id = NULL;
   }
 
-  if (!chatmode || !current_id || strcmp(bjid, current_id) || iscurrentlocked)
+  if (!chatmode || !current_id || strcmp(bjid, current_id) || iscurrentlocked) {
     roster_setuiprio(bjid, special, value, action);
+    update_roster = TRUE;
+  }
 }
 
 //  scr_set_multimode()