Mercurial > dovecot > original-hg > dovecot-1.2
diff src/imap/cmd-close.c @ 559:c834e77b624c HEAD
Mostly mbox locking/syncing fixes. Still some problems though.
author | Timo Sirainen <tss@iki.fi> |
---|---|
date | Sat, 02 Nov 2002 22:10:20 +0200 |
parents | 925d6eb5f8be |
children | 39e0b536e708 |
line wrap: on
line diff
--- a/src/imap/cmd-close.c Fri Nov 01 18:02:23 2002 +0200 +++ b/src/imap/cmd-close.c Sat Nov 02 22:10:20 2002 +0200 @@ -3,19 +3,23 @@ #include "common.h" #include "commands.h" +static void client_send_untagged_storage_error(Client *client) +{ + client_send_line(client, t_strconcat("* NO ", + client->storage->get_last_error(client->storage), NULL)); +} + int cmd_close(Client *client) { if (!client_verify_open_mailbox(client)) return TRUE; - if (!client->mailbox->expunge(client->mailbox, FALSE)) { - /* just warn about the error */ - client_send_tagline(client, t_strconcat("* NO ", - client->storage->get_last_error(client->storage), - NULL)); - } + if (!client->mailbox->expunge(client->mailbox, FALSE)) + client_send_untagged_storage_error(client); - client->mailbox->close(client->mailbox); + if (!client->mailbox->close(client->mailbox)) + client_send_untagged_storage_error(client); + client->mailbox = NULL; client_send_tagline(client, "OK Close completed.");