# HG changeset patch # User Elliott Sales de Andrade # Date 1272091926 0 # Node ID 0cc4f865146216b6bc6f0c3fef90c6b38e57bc9a # Parent a97d60c15e255a52af69a3e400dc8551adf72bf0 Don't bother sending a direct connection request if the other side doesn't support it. aMSN seems to say that they need MSNC1 to do direct connect. diff -r a97d60c15e25 -r 0cc4f8651462 libpurple/protocols/msn/slp.c --- a/libpurple/protocols/msn/slp.c Sat Apr 24 06:41:52 2010 +0000 +++ b/libpurple/protocols/msn/slp.c Sat Apr 24 06:52:06 2010 +0000 @@ -729,18 +729,25 @@ char *header; MsnSlpMessage *msg; MsnDirectConn *dc; + MsnUser *user; if (slpcall->slplink->dc != NULL) { - /* - * If we already have an established direct connection + /* If we already have an established direct connection * then just start the transfer. */ msn_slpcall_session_init(slpcall); return; } + user = msn_userlist_find_user(slpcall->slplink->session->userlist, + slpcall->slplink->remote_user); + if (!(user->clientid & 0xF0000000)) { + /* Just start a normal SB transfer. */ + msn_slpcall_session_init(slpcall); + return; + } + /* Try direct file transfer by sending a second INVITE */ - dc = msn_dc_new(slpcall); slpcall->branch = rand_guid();