dovecot-2.1: imapc: When asking for capabilities, try to ask fro...
dovecot at dovecot.org
dovecot at dovecot.org
Sun Oct 9 20:38:33 EEST 2011
details: http://hg.dovecot.org/dovecot-2.1/rev/337f4e427bb1
changeset: 13630:337f4e427bb1
user: Timo Sirainen <tss at iki.fi>
date: Sun Oct 09 20:46:53 2011 +0300
description:
imapc: When asking for capabilities, try to ask from a logged in connection.
diffstat:
src/lib-imap-client/imapc-client.c | 12 ++++++++++--
1 files changed, 10 insertions(+), 2 deletions(-)
diffs (23 lines):
diff -r 8a2ec8284b61 -r 337f4e427bb1 src/lib-imap-client/imapc-client.c
--- a/src/lib-imap-client/imapc-client.c Sun Oct 09 20:46:28 2011 +0300
+++ b/src/lib-imap-client/imapc-client.c Sun Oct 09 20:46:53 2011 +0300
@@ -358,9 +358,17 @@
imapc_client_get_capabilities(struct imapc_client *client)
{
struct imapc_client_connection *const *connp;
+ struct imapc_connection *conn = NULL;
- connp = array_idx(&client->conns, 0);
- return imapc_connection_get_capabilities((*connp)->conn);
+ /* try to find a connection that is already logged in */
+ array_foreach(&client->conns, connp) {
+ conn = (*connp)->conn;
+ if (imapc_connection_get_state(conn) == IMAPC_CONNECTION_STATE_DONE)
+ return imapc_connection_get_capabilities(conn);
+ }
+
+ /* fallback to whatever exists (there always exists one) */
+ return imapc_connection_get_capabilities(conn);
}
int imapc_client_create_temp_fd(struct imapc_client *client,
More information about the dovecot-cvs
mailing list