diff mcabber/src/jabglue.c @ 649:3ad6675caaf1

MUC: fix join bug when the conference is in the roster
author Mikael Berthe <mikael@lilotux.net>
date Sat, 07 Jan 2006 01:15:04 +0100
parents d26a1c9611db
children 936df057dda0
line wrap: on
line diff
--- a/mcabber/src/jabglue.c	Sat Jan 07 01:12:03 2006 +0100
+++ b/mcabber/src/jabglue.c	Sat Jan 07 01:15:04 2006 +0100
@@ -591,8 +591,12 @@
 
   room_elt = roster_find(room, jidsearch, ROSTER_TYPE_USER|ROSTER_TYPE_ROOM);
   // Add room if it doesn't already exist
-  if (!room_elt)
+  if (!room_elt) {
     room_elt = roster_add_user(room, NULL, NULL, ROSTER_TYPE_ROOM, sub_none);
+  } else {
+    // Make sure this is a room (it can be a conversion user->room)
+    buddy_settype(room_elt->data, ROSTER_TYPE_ROOM);
+  }
   // If insideroom is TRUE, this is a nickname change and we don't care here
   if (!buddy_getinsideroom(room_elt->data)) {
     // We're trying to enter a room