diff options
author | Sulabh Mahajan <sulabh@pidgin.im> | 2009-01-21 08:55:05 +0000 |
---|---|---|
committer | Sulabh Mahajan <sulabh@pidgin.im> | 2009-01-21 08:55:05 +0000 |
commit | a8b425d90980a76cd95d1c8644e91c505b0940dc (patch) | |
tree | 44e26ac7ee9131ccf15706dc674708282343c479 | |
parent | 038d45b3a8c2dbc763f7a9e922e30aa620a7a80a (diff) | |
download | pidgin-a8b425d90980a76cd95d1c8644e91c505b0940dc.tar.gz |
msn interoperability: change groups
-rw-r--r-- | libpurple/protocols/yahoo/yahoo.c | 12 |
1 files changed, 10 insertions, 2 deletions
diff --git a/libpurple/protocols/yahoo/yahoo.c b/libpurple/protocols/yahoo/yahoo.c index 9a2ac6d267..cbe5fb31a1 100644 --- a/libpurple/protocols/yahoo/yahoo.c +++ b/libpurple/protocols/yahoo/yahoo.c @@ -5019,6 +5019,8 @@ static void yahoo_change_buddys_group(PurpleConnection *gc, const char *who, struct yahoo_packet *pkt; char *gpn, *gpo; YahooFriend *f = yahoo_friend_find(gc, who); + gboolean wlm = FALSE; + const char *temp = NULL; /* Step 0: If they aren't on the server list anyway, * don't bother letting the server know. @@ -5026,6 +5028,12 @@ static void yahoo_change_buddys_group(PurpleConnection *gc, const char *who, if (!f) return; + if(f->protocol == 2) { + wlm = TRUE; + temp = who+4; + } else + temp = who; + /* If old and new are the same, we would probably * end up deleting the buddy, which would be bad. * This might happen because of the charset conversation. @@ -5041,11 +5049,11 @@ static void yahoo_change_buddys_group(PurpleConnection *gc, const char *who, pkt = yahoo_packet_new(YAHOO_SERVICE_CHGRP_15, YAHOO_STATUS_AVAILABLE, 0); if(f->protocol) yahoo_packet_hash(pkt, "ssssissss", 1, purple_connection_get_display_name(gc), - 302, "240", 300, "240", 7, who, 241, f->protocol, 224, gpo, 264, gpn, 301, + 302, "240", 300, "240", 7, temp, 241, f->protocol, 224, gpo, 264, gpn, 301, "240", 303, "240"); else yahoo_packet_hash(pkt, "ssssssss", 1, purple_connection_get_display_name(gc), - 302, "240", 300, "240", 7, who, 224, gpo, 264, gpn, 301, + 302, "240", 300, "240", 7, temp, 224, gpo, 264, gpn, 301, "240", 303, "240"); yahoo_packet_send_and_free(pkt, yd); |