From: Timo Sirainen Date: Fri, 28 Oct 2016 16:38:43 +0000 (+0300) Subject: dsync: Fix potential assert on mailbox deinit. X-Git-Tag: 2.3.0.rc1~2742 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=f43ce62fa945f597e8a48e09c53d46dcc95445d4;p=thirdparty%2Fdovecot%2Fcore.git dsync: Fix potential assert on mailbox deinit. Should have happened only in somewhat rare error conditions that require resyncing. Fixes: Panic: file dsync-brain-mailbox.c: line 358 (dsync_brain_sync_mailbox_deinit): assertion failed: (brain->failed || brain->sync_type == DSYNC_BRAIN_SYNC_TYPE_CHANGED) --- diff --git a/src/doveadm/dsync/dsync-brain-mailbox.c b/src/doveadm/dsync/dsync-brain-mailbox.c index 54bc07a1da..502a248913 100644 --- a/src/doveadm/dsync/dsync-brain-mailbox.c +++ b/src/doveadm/dsync/dsync-brain-mailbox.c @@ -354,7 +354,7 @@ void dsync_brain_sync_mailbox_deinit(struct dsync_brain *brain) if (brain->box_exporter != NULL) { const char *errstr; - i_assert(brain->failed || + i_assert(brain->failed || brain->require_full_resync || brain->sync_type == DSYNC_BRAIN_SYNC_TYPE_CHANGED); if (dsync_mailbox_export_deinit(&brain->box_exporter, &errstr, &error) < 0)