Mercurial > pidgin.yaz
changeset 9246:e20af87d8721
[gaim-migrate @ 10045]
Patch from Felipe Contreras that fixes corrupt buddy icon checksums and
adds a menu item called "Update Buddy Icon."
committer: Tailor Script <tailor@pidgin.im>
author | Christian Hammond <chipx86@chipx86.com> |
---|---|
date | Wed, 09 Jun 2004 05:32:17 +0000 |
parents | 9b138ebf9ca8 |
children | 933c7418fd03 |
files | src/protocols/msn/msn.c src/protocols/msn/slplink.c |
diffstat | 2 files changed, 30 insertions(+), 7 deletions(-) [+] |
line wrap: on
line diff
--- a/src/protocols/msn/msn.c Wed Jun 09 04:34:25 2004 +0000 +++ b/src/protocols/msn/msn.c Wed Jun 09 05:32:17 2004 +0000 @@ -379,6 +379,20 @@ gaim_xfer_request(xfer); } +static void +update_buddy_icon_cb(GaimBlistNode *node, gpointer ignored) +{ + GaimBuddy *buddy; + GaimConnection *gc; + + g_return_if_fail(GAIM_BLIST_NODE_IS_BUDDY(node)); + + buddy = (GaimBuddy *) node; + gc = gaim_account_get_connection(buddy->account); + + msn_request_buddy_icon(gc, buddy->name); +} + /************************************************************************** * Protocol Plugin ops **************************************************************************/ @@ -517,10 +531,6 @@ m = g_list_append(m, act); } - act = gaim_blist_node_action_new(_("Send File"), - show_send_file_cb, NULL); - - m = g_list_append(m, act); } if (g_ascii_strcasecmp(buddy->name, @@ -529,6 +539,16 @@ act = gaim_blist_node_action_new(_("Initiate Chat"), initiate_chat_cb, NULL); m = g_list_append(m, act); + + act = gaim_blist_node_action_new(_("Send File"), + show_send_file_cb, NULL); + + m = g_list_append(m, act); + + act = gaim_blist_node_action_new(_("Update Buddy Icon"), + update_buddy_icon_cb, NULL); + + m = g_list_append(m, act); } return m;
--- a/src/protocols/msn/slplink.c Wed Jun 09 04:34:25 2004 +0000 +++ b/src/protocols/msn/slplink.c Wed Jun 09 05:32:17 2004 +0000 @@ -240,10 +240,13 @@ { /* The whole message has been sent */ - if ((slpmsg->slpcall != NULL) && - (slpmsg->slpcall->cb != NULL)) + if (slpmsg->flags == 0x20 || slpmsg->flags == 0x1000030) { - slpmsg->slpcall->cb(slpmsg->slpcall, NULL, 0); + if ((slpmsg->slpcall != NULL) && + (slpmsg->slpcall->cb != NULL)) + { + slpmsg->slpcall->cb(slpmsg->slpcall, NULL, 0); + } } msn_slpmsg_destroy(slpmsg);