From: Timo Sirainen Date: Wed, 6 Apr 2016 11:05:26 +0000 (+0300) Subject: imapc: Code cleanup - imapc_connection_reconnect() is now always called when reconnec... X-Git-Tag: 2.2.24~81 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=5ba8e641e1cfe122af4830c82da446bfb41e9946;p=thirdparty%2Fdovecot%2Fcore.git imapc: Code cleanup - imapc_connection_reconnect() is now always called when reconnect is ok. --- diff --git a/src/lib-imap-client/imapc-client.c b/src/lib-imap-client/imapc-client.c index f23c39e999..a582c91806 100644 --- a/src/lib-imap-client/imapc-client.c +++ b/src/lib-imap-client/imapc-client.c @@ -319,21 +319,16 @@ bool imapc_client_mailbox_can_reconnect(struct imapc_client_mailbox *box) void imapc_client_mailbox_reconnect(struct imapc_client_mailbox *box) { - bool reconnect = imapc_client_mailbox_can_reconnect(box); + i_assert(!box->reconnecting); - if (reconnect) { - i_assert(!box->reconnecting); - box->reconnecting = TRUE; - } - imapc_connection_disconnect(box->conn); - if (reconnect) { - imapc_connection_connect(box->conn, - imapc_client_reconnect_cb, box); - } + box->reconnecting = TRUE; /* if we fail again, avoid reconnecting immediately. if the server is broken we could just get into an infinitely failing reconnection loop. */ box->reconnect_ok = FALSE; + + imapc_connection_disconnect(box->conn); + imapc_connection_connect(box->conn, imapc_client_reconnect_cb, box); } void imapc_client_mailbox_close(struct imapc_client_mailbox **_box)