From: Timo Sirainen Date: Sat, 3 May 2003 17:36:34 +0000 (+0300) Subject: Handle inconsistency error separately. X-Git-Tag: 1.1.alpha1~4691 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=f38577aa457903031bc9158e8b25916db5958b85;p=thirdparty%2Fdovecot%2Fcore.git Handle inconsistency error separately. --HG-- branch : HEAD --- diff --git a/src/pop3/client.c b/src/pop3/client.c index 252c264715..9961df39d7 100644 --- a/src/pop3/client.c +++ b/src/pop3/client.c @@ -188,6 +188,14 @@ void client_send_storage_error(struct client *client) { const char *error; + if (client->mailbox->is_inconsistency_error(client->mailbox)) { + /* we can't do forced CLOSE, so have to disconnect */ + client_send_line(client, "-ERR Mailbox is in inconsistent " + "state, please relogin."); + client_disconnect(client); + return; + } + error = client->storage->get_last_error(client->storage, NULL); client_send_line(client, "-ERR %s", error != NULL ? error : "BUG: Unknown error");