--- a/libpurple/protocols/msn/servconn.c Sun Jun 03 01:06:44 2007 +0000 +++ b/libpurple/protocols/msn/servconn.c Sat Jun 16 04:00:32 2007 +0000 @@ -195,6 +195,7 @@ } else { + purple_debug_error("msn", "Connection error: %s\n", error_message); msn_servconn_got_error(servconn, MSN_SERVCONN_ERROR_CONNECT); } } @@ -353,7 +354,7 @@ if (ret < 0 && errno == EAGAIN) ret = 0; - if (ret < len) { + if (ret >= 0 && ret < len) { if (servconn->tx_handler == -1) servconn->tx_handler = purple_input_add( servconn->fd, PURPLE_INPUT_WRITE,