timeout_remove(&conn->to);
conn->reconnecting = reconnecting;
- if (conn->state == IMAPC_CONNECTION_STATE_DISCONNECTED)
+ if (conn->state == IMAPC_CONNECTION_STATE_DISCONNECTED) {
+ i_assert(array_count(&conn->cmd_wait_list) == 0);
return;
+ }
if (conn->client->set.debug)
i_debug("imapc(%s): Disconnected", conn->name);
imapc_auth_ok(conn);
+ i_assert(array_count(&conn->cmd_wait_list) == 0);
timeout_remove(&conn->to);
imapc_connection_set_state(conn, IMAPC_CONNECTION_STATE_DONE);
imapc_login_callback(conn, reply);
{
struct imapc_command *const *cmdp;
+ i_assert(conn->to != NULL);
+
if (cmd->idle)
conn->idle_plus_waiting = TRUE;
cmd->sent = TRUE;