aboutsummaryrefslogtreecommitdiffstats
path: root/protocols
diff options
context:
space:
mode:
authorWilmer van der Gaast <wilmer@gaast.net>2010-07-24 16:19:44 +0200
committerWilmer van der Gaast <wilmer@gaast.net>2010-07-24 16:19:44 +0200
commit7989d40d5b9c8f05b38e7b07ab7e91335e717309 (patch)
treead72c4b5e1ecdd9a997f9933444a996b130f1f41 /protocols
parent03f38289e15c27b93f8fdecf22a03353e4d01096 (diff)
Fixing chat_join() for OSCAR to return a struct groupchat* right away,
without this we end up creating a #chat_000.
Diffstat (limited to 'protocols')
-rw-r--r--protocols/oscar/oscar.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/protocols/oscar/oscar.c b/protocols/oscar/oscar.c
index fdf0d82c..0310a27e 100644
--- a/protocols/oscar/oscar.c
+++ b/protocols/oscar/oscar.c
@@ -2509,6 +2509,7 @@ struct groupchat *oscar_chat_join_internal(struct im_connection *ic, const char
const char *nick, const char *password, int exchange_number)
{
struct oscar_data * od = (struct oscar_data *)ic->proto_data;
+ struct groupchat *ret = imcb_chat_new(ic, room);
aim_conn_t * cur;
if((cur = aim_getconn_type(od->sess, AIM_CONN_TYPE_CHATNAV))) {
@@ -2516,7 +2517,7 @@ struct groupchat *oscar_chat_join_internal(struct im_connection *ic, const char
st = aim_chatnav_createroom(od->sess, cur, room, exchange_number);
- return NULL;
+ return ret;
} else {
struct create_room * cr = g_new0(struct create_room, 1);
@@ -2525,7 +2526,7 @@ struct groupchat *oscar_chat_join_internal(struct im_connection *ic, const char
od->create_rooms = g_slist_append(od->create_rooms, cr);
aim_reqservice(od->sess, od->conn, AIM_CONN_TYPE_CHATNAV);
- return NULL;
+ return ret;
}
}