]> git.ipfire.org Git - thirdparty/dovecot/core.git/commitdiff
imap: Don't hang if client sends IDLE + DONE pipelined.
authorTimo Sirainen <tss@iki.fi>
Wed, 1 Sep 2010 16:52:33 +0000 (17:52 +0100)
committerTimo Sirainen <tss@iki.fi>
Wed, 1 Sep 2010 16:52:33 +0000 (17:52 +0100)
src/imap/cmd-idle.c

index 1083bedeec7b9d4e24bf31583fea17a5e98161e6..bcb85550f1031e1bfa632ae984060a294e59afeb 100644 (file)
@@ -90,7 +90,7 @@ static void idle_client_input_more(struct cmd_idle_context *ctx)
                        break;
                }
        }
-       if (!client->disconnected)
+       if (!client->disconnected && !client->handling_input)
                client_continue_pending_input(client);
 }
 
@@ -260,5 +260,6 @@ bool cmd_idle(struct client_command_context *cmd)
           added mailbox-notifier, we wouldn't see them otherwise. */
        if (client->mailbox != NULL)
                idle_sync_now(client->mailbox, ctx);
+       idle_client_input_more(ctx);
        return FALSE;
 }