--- a/libpurple/protocols/mxit/multimx.c Sat Aug 13 17:11:59 2011 +0000
+++ b/libpurple/protocols/mxit/multimx.c Sat Aug 13 22:01:39 2011 +0000
@@ -277,7 +277,11 @@
struct multimx* multimx = NULL;
- purple_debug_info(MXIT_PLUGIN_ID, "Groupchat invite to '%s' by '%s'\n", contact->alias, creator);
+ purple_debug_info(MXIT_PLUGIN_ID, "Groupchat invite to '%s' (roomid='%s') by '%s'\n", contact->alias, contact->username, creator); + /* Check if the room already exists (ie, already joined or invite pending) */ + if (find_room_by_username(session, contact->username) != NULL) multimx = room_create(session, contact->username, contact->alias, STATE_INVITED);
@@ -307,7 +311,7 @@
multimx = find_room_by_username(session, contact->username);
multimx = room_create(session, contact->username, contact->alias, TRUE);
else if (multimx->state == STATE_INVITED) {
/* After successfully accepting an invitation */
multimx->state = STATE_JOINED;