dovecot-2.0: lib-storage: Don't loop infinitely on deinit when I...

dovecot at dovecot.org dovecot at dovecot.org
Mon Mar 1 22:05:47 EET 2010


details:   http://hg.dovecot.org/dovecot-2.0/rev/f56c227a7fc9
changeset: 10821:f56c227a7fc9
user:      Timo Sirainen <tss at iki.fi>
date:      Mon Mar 01 22:05:43 2010 +0200
description:
lib-storage: Don't loop infinitely on deinit when INBOX was auto-created.

diffstat:

 src/lib-storage/index/index-thread.c |  7 ++++++-
 1 files changed, 6 insertions(+), 1 deletions(-)

diffs (17 lines):

diff -r 4b744015a8ae -r f56c227a7fc9 src/lib-storage/index/index-thread.c
--- a/src/lib-storage/index/index-thread.c	Mon Mar 01 22:01:57 2010 +0200
+++ b/src/lib-storage/index/index-thread.c	Mon Mar 01 22:05:43 2010 +0200
@@ -641,7 +641,12 @@
 
 void index_thread_mailbox_opened(struct mailbox *box)
 {
-	struct mail_thread_mailbox *tbox;
+	struct mail_thread_mailbox *tbox = MAIL_THREAD_CONTEXT(box);
+
+	if (tbox != NULL) {
+		/* mailbox was already opened+closed once. */
+		return;
+	}
 
 	tbox = i_new(struct mail_thread_mailbox, 1);
 	tbox->module_ctx.super = box->v;


More information about the dovecot-cvs mailing list