--- a/libfaim/conn.c Fri Mar 16 11:54:39 2001 +0000 +++ b/libfaim/conn.c Fri Mar 16 14:29:54 2001 +0000 @@ -112,6 +112,8 @@ if (!deadconn || !*deadconn) return; + aim_tx_cleanqueue(sess, *deadconn); + faim_mutex_lock(&sess->connlistlock); if (sess->connlist == NULL) ; @@ -540,7 +542,8 @@ * */ faim_export struct aim_conn_t *aim_select(struct aim_session_t *sess, - struct timeval *timeout, int *status) + struct timeval *timeout, + int *status) { struct aim_conn_t *cur; fd_set fds, wfds; @@ -568,6 +571,7 @@ return cur; } else if (cur->status & AIM_CONN_STATUS_INPROGRESS) { FD_SET(cur->fd, &wfds); + haveconnecting++; } FD_SET(cur->fd, &fds);