]> git.ipfire.org Git - thirdparty/dovecot/core.git/commitdiff
maildir: We didn't properly handle missing control directory at startup.
authorTimo Sirainen <tss@iki.fi>
Mon, 23 Feb 2009 18:40:01 +0000 (13:40 -0500)
committerTimo Sirainen <tss@iki.fi>
Mon, 23 Feb 2009 18:40:01 +0000 (13:40 -0500)
Also some other error handling when some dirs were missing were done wrong.

--HG--
branch : HEAD

src/lib-storage/index/maildir/maildir-keywords.c
src/lib-storage/index/maildir/maildir-sync.c
src/lib-storage/index/maildir/maildir-uidlist.c

index c70ac8444794d4c1937776d0db1201c8b22e7821..8836e12704e033640720b29554600e491857cb0c 100644 (file)
@@ -371,7 +371,7 @@ static int maildir_keywords_commit(struct maildir_keywords *mk)
                }
                /* the control dir doesn't exist. create it unless the whole
                   mailbox was just deleted. */
-               if (maildir_set_deleted(mk->mbox))
+               if (!maildir_set_deleted(mk->mbox))
                        return -1;
        }
 
index 2999619a38fea913692e6c03577411885796add7..bb30f6c3337e004524a53047e2d47b2d34adfdea 100644 (file)
@@ -344,7 +344,7 @@ maildir_stat(struct maildir_mailbox *mbox, const char *path, struct stat *st_r)
                if (errno != ENOENT || i == MAILDIR_DELETE_RETRY_COUNT)
                        break;
 
-               if (maildir_set_deleted(mbox))
+               if (!maildir_set_deleted(mbox))
                        return -1;
                /* try again */
        }
@@ -380,7 +380,7 @@ static int maildir_scan_dir(struct maildir_sync_context *ctx, bool new_dir)
                        return -1;
                }
 
-               if (maildir_set_deleted(ctx->mbox))
+               if (!maildir_set_deleted(ctx->mbox))
                        return -1;
                /* try again */
        }
index 579d1a808f87606775517c0c191063d1f2bf0786..19b6f887635ff2a630c453d18bf79681c04b1e8b 100644 (file)
@@ -164,7 +164,7 @@ static int maildir_uidlist_lock_timeout(struct maildir_uidlist *uidlist,
                }
                /* the control dir doesn't exist. create it unless the whole
                   mailbox was just deleted. */
-               if (maildir_set_deleted(uidlist->mbox))
+               if (!maildir_set_deleted(uidlist->mbox))
                        return -1;
        }
 
@@ -1119,7 +1119,7 @@ static int maildir_uidlist_recreate(struct maildir_uidlist *uidlist)
                }
                /* the control dir doesn't exist. create it unless the whole
                   mailbox was just deleted. */
-               if (maildir_set_deleted(uidlist->mbox))
+               if (!maildir_set_deleted(uidlist->mbox))
                        return -1;
        }