]> git.ipfire.org Git - thirdparty/dovecot/core.git/commitdiff
lib-storage: Fixed mailbox_delete_empty() error message when mails exist
authorTimo Sirainen <timo.sirainen@dovecot.fi>
Fri, 1 Jul 2016 09:23:59 +0000 (12:23 +0300)
committerTimo Sirainen <timo.sirainen@dovecot.fi>
Fri, 1 Jul 2016 13:42:00 +0000 (16:42 +0300)
src/lib-storage/index/index-storage.c

index 0d5a407ad5c76daf0eb5e0047a1751285abf3857..aa56da9054c3aae563ddacb1a38cff916d3ea3a8 100644 (file)
@@ -718,7 +718,13 @@ int index_storage_mailbox_delete_pre(struct mailbox *box)
                if (mailbox_sync(box, MAILBOX_SYNC_FLAG_FULL_READ) < 0)
                        return -1;
                mailbox_get_open_status(box, STATUS_MESSAGES, &status);
-               if (status.messages != 0) {
+               if (status.messages == 0)
+                       ;
+               else if (box->deleting_must_be_empty) {
+                       mail_storage_set_error(box->storage, MAIL_ERROR_EXISTS,
+                                              "Mailbox isn't empty");
+                       return -1;
+               } else {
                        mail_storage_set_error(box->storage, MAIL_ERROR_EXISTS,
                                "New mails were added to mailbox during deletion");
                        return -1;