]> git.ipfire.org Git - thirdparty/dovecot/core.git/commitdiff
imapc: Fix assert-crash after detecting that multiple expunged mail reappear
authorTimo Sirainen <timo.sirainen@dovecot.fi>
Wed, 21 Feb 2018 15:04:16 +0000 (17:04 +0200)
committerAki Tuomi <aki.tuomi@dovecot.fi>
Wed, 28 Feb 2018 08:30:19 +0000 (10:30 +0200)
The first imapc_mailbox_set_corrupted() call started a reconnect. The second
call crashed with:

Panic: file imapc-client.c: line 414 (imapc_client_mailbox_reconnect): assertion failed: (!box->reconnecting)

src/lib-storage/index/imapc/imapc-sync.c

index 3db2fab1327c4159fc1c0ef2e176982cffe2c906..626ffc10d627c070a40d11d203197a7a8aef65e9 100644 (file)
@@ -346,7 +346,7 @@ imapc_initial_sync_check(struct imapc_sync_context *ctx, bool nooped)
                        imapc_mailbox_set_corrupted(ctx->mbox,
                                "Expunged message uid=%u reappeared", ruid);
                        ctx->failed = TRUE;
-                       rseq++;
+                       return;
                }
        }
 }