diff libpurple/protocols/oscar/family_oservice.c @ 30371:1a81e5b64779

Adium guys need the itmsurl stuff, which I erroneously removed without thinking twice. Shame on me.
author ivan.komarov@soc.pidgin.im
date Thu, 24 Jun 2010 16:56:01 +0000
parents 3ada0cc7d2c5
children 420907755a2f
line wrap: on
line diff
--- a/libpurple/protocols/oscar/family_oservice.c	Wed Jun 23 22:32:45 2010 +0000
+++ b/libpurple/protocols/oscar/family_oservice.c	Thu Jun 24 16:56:01 2010 +0000
@@ -883,7 +883,7 @@
 int
 aim_srv_setextrainfo(OscarData *od,
 		gboolean seticqstatus, guint32 icqstatus,
-		gboolean setstatusmsg, const char *statusmsg)
+		gboolean setstatusmsg, const char *statusmsg, const char *itmsurl)
 {
 	FlapConnection *conn;
 	ByteStream bs;
@@ -911,15 +911,18 @@
 
 	if (setstatusmsg)
 	{
-		size_t statusmsglen;
+		size_t statusmsglen, itmsurllen;
 		ByteStream tmpbs;
 
 		statusmsglen = (statusmsg != NULL) ? strlen(statusmsg) : 0;
+		itmsurllen = (itmsurl != NULL) ? strlen(itmsurl) : 0;
 
-		byte_stream_new(&tmpbs, statusmsglen + 8);
+		byte_stream_new(&tmpbs, statusmsglen + 8 + itmsurllen + 8);
 		byte_stream_put_bart_asset_str(&tmpbs, 0x0002, statusmsg);
+		byte_stream_put_bart_asset_str(&tmpbs, 0x0009, itmsurl);
 
-		aim_tlvlist_add_raw(&tlvlist, 0x001d, byte_stream_curpos(&tmpbs), tmpbs.data);
+		aim_tlvlist_add_raw(&tlvlist, 0x001d,
+				byte_stream_curpos(&tmpbs), tmpbs.data);
 		byte_stream_destroy(&tmpbs);
 	}