Mercurial > dovecot > core-2.2
changeset 19658:3cc8fb81e7f9
imap: Send all pending tagged command replies before APPEND is started.
This probably doesn't matter a lot, but it's cleaner.
One side effect of this change is that if multiple APPENDs are pipelined
(without MULTIAPPEND) on the selected mailbox, this now performs a sync
between each APPEND and sends the EXISTS replies. This may be slightly
lower in performance, but it's also slightly more correct behavior.
author | Timo Sirainen <timo.sirainen@dovecot.fi> |
---|---|
date | Thu, 28 Jan 2016 15:36:58 +0200 |
parents | ea87c511c6c8 |
children | c198a998082c |
files | src/imap/imap-commands.c |
diffstat | 1 files changed, 5 insertions(+), 1 deletions(-) [+] |
line wrap: on
line diff
--- a/src/imap/imap-commands.c Thu Jan 28 15:16:29 2016 +0200 +++ b/src/imap/imap-commands.c Thu Jan 28 15:36:58 2016 +0200 @@ -20,7 +20,11 @@ { "LOGOUT", cmd_logout, COMMAND_FLAG_BREAKS_MAILBOX }, { "NOOP", cmd_noop, COMMAND_FLAG_BREAKS_SEQS }, - { "APPEND", cmd_append, COMMAND_FLAG_BREAKS_SEQS }, + { "APPEND", cmd_append, COMMAND_FLAG_BREAKS_SEQS | + /* finish syncing and sending + all tagged commands before + we wait for APPEND input */ + COMMAND_FLAG_BREAKS_MAILBOX }, { "EXAMINE", cmd_examine, COMMAND_FLAG_BREAKS_MAILBOX }, { "CREATE", cmd_create, 0 }, { "DELETE", cmd_delete, COMMAND_FLAG_BREAKS_MAILBOX |