]> git.ipfire.org Git - thirdparty/dovecot/core.git/commitdiff
Maildir saving: If uidlist locking timed out and we needed it, fail instead of trying...
authorTimo Sirainen <tss@iki.fi>
Thu, 11 Sep 2008 13:37:32 +0000 (16:37 +0300)
committerTimo Sirainen <tss@iki.fi>
Thu, 11 Sep 2008 13:37:32 +0000 (16:37 +0300)
--HG--
branch : HEAD

src/lib-storage/index/maildir/maildir-save.c

index 507feb190edea019f591a498453ca14ca2a3e54f..991cb3960a73044cd15723c0a912ac4d28a13e13 100644 (file)
@@ -675,7 +675,8 @@ int maildir_transaction_save_commit_pre(struct maildir_save_context *ctx)
        }
        ret = maildir_uidlist_sync_init(ctx->mbox->uidlist, sync_flags,
                                        &ctx->uidlist_sync_ctx);
-       if (ret < 0) {
+       if (ret <= 0 &&
+           (ret < 0 || (sync_flags & MAILDIR_UIDLIST_SYNC_TRYLOCK) == 0)) {
                maildir_transaction_save_rollback(ctx);
                return -1;
        }