[dovecot-cvs] dovecot/src/imap cmd-idle.c,1.31,1.32
tss at dovecot.org
tss at dovecot.org
Sat Nov 18 21:30:01 UTC 2006
Update of /var/lib/cvs/dovecot/src/imap
In directory talvi:/tmp/cvs-serv5326
Modified Files:
cmd-idle.c
Log Message:
If syncing finished with an error and client had disconnected, we
assert-crashed in io_add().
Index: cmd-idle.c
===================================================================
RCS file: /var/lib/cvs/dovecot/src/imap/cmd-idle.c,v
retrieving revision 1.31
retrieving revision 1.32
diff -u -d -r1.31 -r1.32
--- cmd-idle.c 12 Nov 2006 11:31:42 -0000 1.31
+++ cmd-idle.c 18 Nov 2006 21:29:58 -0000 1.32
@@ -170,11 +170,6 @@
struct client *client = cmd->client;
struct cmd_idle_context *ctx = cmd->context;
- if (client->output->closed) {
- idle_finish(ctx, FALSE);
- return TRUE;
- }
-
if (ctx->sync_ctx != NULL) {
if (imap_sync_more(ctx->sync_ctx) == 0) {
/* unfinished */
@@ -202,6 +197,10 @@
}
client->output_pending = FALSE;
+ if (client->output->closed) {
+ idle_finish(ctx, FALSE);
+ return TRUE;
+ }
if (client->io == NULL) {
/* input is pending */
client->io = io_add(i_stream_get_fd(client->input),
More information about the dovecot-cvs
mailing list