aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorWilmer van der Gaast <wilmer@gaast.net>2010-05-16 10:46:27 +0100
committerWilmer van der Gaast <wilmer@gaast.net>2010-05-16 10:46:27 +0100
commitd4bc2d90d88527f434f910b9821c145394434d71 (patch)
tree92fe397f0944e7c7032a6c050892f28f8ec45128
parent6be46b37a167031f7a6888be03c2611f0762639a (diff)
Handle AIM_CAPS_ICQRTF messages (sometimes sent by certain mobile clients).
Not sure if this needs any stripping but I guess we'll find out.
-rw-r--r--protocols/oscar/oscar.c8
1 files changed, 6 insertions, 2 deletions
diff --git a/protocols/oscar/oscar.c b/protocols/oscar/oscar.c
index 00c5e5ef..9f568c44 100644
--- a/protocols/oscar/oscar.c
+++ b/protocols/oscar/oscar.c
@@ -1029,16 +1029,20 @@ static int incomingim_chan2(aim_session_t *sess, aim_conn_t *conn, aim_userinfo_
*exch = args->info.chat.roominfo.exchange;
m = g_list_append(m, exch);
- g_snprintf( txt, 1024, "Got an invitation to chatroom %s from %s: %s", name, userinfo->sn, args->msg );
+ g_snprintf(txt, 1024, "Got an invitation to chatroom %s from %s: %s", name, userinfo->sn, args->msg);
inv->ic = ic;
inv->exchange = *exch;
inv->name = g_strdup(name);
- imcb_ask( ic, txt, inv, oscar_accept_chat, oscar_reject_chat);
+ imcb_ask(ic, txt, inv, oscar_accept_chat, oscar_reject_chat);
if (name)
g_free(name);
+ } else if (args->reqclass & AIM_CAPS_ICQRTF) {
+ // TODO: constify
+ char *text = g_strdup(args->info.rtfmsg.rtfmsg);
+ imcb_buddy_msg(ic, normalize(userinfo->sn), text, 0, 0);
}
return 1;