diff options
author | Wilmer van der Gaast <wilmer@gaast.net> | 2007-11-10 09:25:50 +0000 |
---|---|---|
committer | Wilmer van der Gaast <wilmer@gaast.net> | 2007-11-10 09:25:50 +0000 |
commit | be68d99a58721768033c83d2f0a8f26e1af9bd73 (patch) | |
tree | 84b53aba8cffd2437bd6d9091596cb19710140d9 | |
parent | 22313024f80f7325a7253c64fe49cc6458df7dd4 (diff) |
Handing of multipart messages in OSCAR (usually from mobiles), this fixes
bug #88, at last.
-rw-r--r-- | protocols/oscar/oscar.c | 11 |
1 files changed, 10 insertions, 1 deletions
diff --git a/protocols/oscar/oscar.c b/protocols/oscar/oscar.c index 426dd4a2..2b8b4853 100644 --- a/protocols/oscar/oscar.c +++ b/protocols/oscar/oscar.c @@ -1065,8 +1065,17 @@ static int incomingim_chan1(aim_session_t *sess, aim_conn_t *conn, aim_userinfo_ } else { g_snprintf(tmp, BUF_LONG, "%s", args->msg); } - } else + } else if (args->mpmsg.numparts == 0) { g_snprintf(tmp, BUF_LONG, "%s", args->msg); + } else { + int i; + + *tmp = 0; + for (i = 0; i < args->mpmsg.numparts; i ++) { + g_strlcat(tmp, (char*) args->mpmsg.parts[i].data, BUF_LONG); + g_strlcat(tmp, "\n", BUF_LONG); + } + } strip_linefeed(tmp); imcb_buddy_msg(ic, userinfo->sn, tmp, flags, 0); |