about summary refs log tree commit diff stats
path: root/src/jabber.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/jabber.c')
-rw-r--r--src/jabber.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/src/jabber.c b/src/jabber.c
index 21530c7e..336c990b 100644
--- a/src/jabber.c
+++ b/src/jabber.c
@@ -660,9 +660,12 @@ _room_presence_handler(const char * const jid)
 
     // handle self presence (means room roster has been sent)
     if (strcmp(room_get_nick_for_room(room), nick) == 0) {
+        room_set_roster_received(room);
         prof_handle_room_roster_complete(room);
     } else {
-        room_add_to_roster(room, nick);
+        if (!room_get_roster_received(room)) {
+            room_add_to_roster(room, nick);
+        }
     }
 
     return 1;