dovecot-2.2: imap: Fixed assert-crash if client disconnected at ...
dovecot at dovecot.org
dovecot at dovecot.org
Fri Dec 4 10:16:05 UTC 2015
details: http://hg.dovecot.org/dovecot-2.2/rev/0b81127e53da
changeset: 19458:0b81127e53da
user: Timo Sirainen <tss at iki.fi>
date: Fri Dec 04 12:15:49 2015 +0200
description:
imap: Fixed assert-crash if client disconnected at a specific command state.
If there was a command with state=CLIENT_COMMAND_STATE_WAIT_SYNC and output
stream was already detected to be closed, we crashed with:
Panic: file imap-client.c: line 841 (client_check_command_hangs): assertion
failed: (!have_wait_unfinished || unfinished_count > 0)
diffstat:
src/imap/imap-client.c | 3 ++-
1 files changed, 2 insertions(+), 1 deletions(-)
diffs (13 lines):
diff -r a47d273e144f -r 0b81127e53da src/imap/imap-client.c
--- a/src/imap/imap-client.c Fri Dec 04 11:38:00 2015 +0200
+++ b/src/imap/imap-client.c Fri Dec 04 12:15:49 2015 +0200
@@ -880,7 +880,8 @@
if (!client_handle_input(client))
break;
}
- client_check_command_hangs(client);
+ if (!client->input->closed && !client->output->closed)
+ client_check_command_hangs(client);
}
/* Skip incoming data until newline is found,
More information about the dovecot-cvs
mailing list