From: Timo Sirainen Date: Mon, 12 Jul 2004 08:07:03 +0000 (+0300) Subject: Handle recent flags in index file correctly. Fixes recent flag losing when X-Git-Tag: 1.1.alpha1~3786 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=0aa66a8e037c08604e71446d6ba52150a17dfc21;p=thirdparty%2Fdovecot%2Fcore.git Handle recent flags in index file correctly. Fixes recent flag losing when copying or saving mails with flags. --HG-- branch : HEAD --- diff --git a/src/lib-storage/index/maildir/maildir-sync.c b/src/lib-storage/index/maildir/maildir-sync.c index 304a782545..33bb7589a2 100644 --- a/src/lib-storage/index/maildir/maildir-sync.c +++ b/src/lib-storage/index/maildir/maildir-sync.c @@ -720,6 +720,17 @@ static int maildir_sync_index(struct maildir_sync_context *ctx) continue; } + if ((rec->flags & MAIL_RECENT) != 0) { + index_mailbox_set_recent(ibox, seq); + if (ibox->keep_recent) { + flags |= MAIL_RECENT; + } else { + mail_index_update_flags(trans, seq, + MODIFY_REMOVE, + MAIL_RECENT, keywords); + } + } + if ((uflags & MAILDIR_UIDLIST_REC_FLAG_NONSYNCED) != 0) { /* partial syncing */ continue;