dovecot-1.1: Maildir: Check more correctly when we should update...
dovecot at dovecot.org
dovecot at dovecot.org
Sun Jul 20 15:42:01 EEST 2008
details: http://hg.dovecot.org/dovecot-1.1/rev/1edff123dd8f
changeset: 7760:1edff123dd8f
user: Timo Sirainen <tss at iki.fi>
date: Sun Jul 20 15:41:57 2008 +0300
description:
Maildir: Check more correctly when we should update/recreate uidlist.
diffstat:
1 file changed, 8 insertions(+), 4 deletions(-)
src/lib-storage/index/maildir/maildir-uidlist.c | 12 ++++++++----
diffs (33 lines):
diff -r a8331972aee5 -r 1edff123dd8f src/lib-storage/index/maildir/maildir-uidlist.c
--- a/src/lib-storage/index/maildir/maildir-uidlist.c Sun Jul 20 15:24:05 2008 +0300
+++ b/src/lib-storage/index/maildir/maildir-uidlist.c Sun Jul 20 15:41:57 2008 +0300
@@ -1161,6 +1161,9 @@ static bool maildir_uidlist_want_compres
{
unsigned int min_rewrite_count;
+ if (!ctx->uidlist->initial_read)
+ return FALSE;
+
min_rewrite_count =
(ctx->uidlist->read_records_count + ctx->new_files_count) *
UIDLIST_COMPRESS_PERCENTAGE / 100;
@@ -1171,14 +1174,15 @@ static bool maildir_uidlist_want_recreat
{
struct maildir_uidlist *uidlist = ctx->uidlist;
+ if (uidlist->recreate ||
+ ctx->finish_change_counter != uidlist->change_counter)
+ return TRUE;
+
if (!uidlist->initial_read)
return FALSE;
- if (uidlist->recreate || uidlist->fd == -1 ||
- uidlist->version != UIDLIST_VERSION ||
- ctx->finish_change_counter != uidlist->change_counter)
+ if (uidlist->fd == -1 || uidlist->version != UIDLIST_VERSION)
return TRUE;
-
return maildir_uidlist_want_compress(ctx);
}
More information about the dovecot-cvs
mailing list