--- a/libpurple/protocols/msnp9/servconn.c Sat Jul 12 07:32:05 2008 +0000 +++ b/libpurple/protocols/msnp9/servconn.c Sun Jul 13 01:15:09 2008 +0000 @@ -251,6 +251,12 @@ { g_return_if_fail(servconn != NULL); + if (servconn->connect_data != NULL) + { + purple_proxy_connect_cancel(servconn->connect_data); + servconn->connect_data = NULL; + } + if (!servconn->connected) { /* We could not connect. */ @@ -269,12 +275,6 @@ return; } - if (servconn->connect_data != NULL) - { - purple_proxy_connect_cancel(servconn->connect_data); - servconn->connect_data = NULL; - } - if (servconn->inpa > 0) { purple_input_remove(servconn->inpa);