dovecot-2.2: mdbox: Don't try to undelete any mailboxes in stora...

dovecot at dovecot.org dovecot at dovecot.org
Mon Feb 25 17:48:20 EET 2013


details:   http://hg.dovecot.org/dovecot-2.2/rev/9cb64709dd8c
changeset: 15943:9cb64709dd8c
user:      Timo Sirainen <tss at iki.fi>
date:      Fri Feb 22 09:43:59 2013 +0200
description:
mdbox: Don't try to undelete any mailboxes in storage rebuild to avoid assert-crashes.

diffstat:

 src/lib-storage/mail-storage.c |  7 +++++++
 1 files changed, 7 insertions(+), 0 deletions(-)

diffs (17 lines):

diff -r 8ec52854e823 -r 9cb64709dd8c src/lib-storage/mail-storage.c
--- a/src/lib-storage/mail-storage.c	Fri Feb 22 07:37:18 2013 +0200
+++ b/src/lib-storage/mail-storage.c	Fri Feb 22 09:43:59 2013 +0200
@@ -928,6 +928,13 @@
 {
 	time_t mtime;
 
+	if ((box->flags & MAILBOX_FLAG_READONLY) != 0) {
+		/* most importantly we don't do this because we want to avoid
+		   a loop: mdbox storage rebuild -> mailbox_open() ->
+		   mailbox_mark_index_deleted() -> mailbox_sync() ->
+		   mdbox storage rebuild. */
+		return FALSE;
+	}
 	if (mail_index_get_modification_time(box->index, &mtime) < 0)
 		return FALSE;
 	if (mtime + MAILBOX_DELETE_RETRY_SECS > time(NULL))


More information about the dovecot-cvs mailing list