From: Aki Tuomi Date: Wed, 26 Jul 2017 10:35:36 +0000 (+0300) Subject: virtual: Do not store recent flags to virtual index X-Git-Tag: 2.2.32.rc1~15 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=6758aa2c5cf94d2adedc1ac1d570e420142d46d0;p=thirdparty%2Fdovecot%2Fcore.git virtual: Do not store recent flags to virtual index Setting the flag here would case unnecessary index update to clear the flag later on. --- diff --git a/src/plugins/virtual/virtual-sync.c b/src/plugins/virtual/virtual-sync.c index e6a20cff8f..2e2a7e2876 100644 --- a/src/plugins/virtual/virtual-sync.c +++ b/src/plugins/virtual/virtual-sync.c @@ -78,7 +78,9 @@ static void virtual_sync_external_flags(struct virtual_sync_context *ctx, /* copy flags */ flags = mail_get_flags(bbox->sync_mail); - mail_index_update_flags(ctx->trans, vseq, MODIFY_REPLACE, flags); + + /* we don't need to keep recent flags here */ + mail_index_update_flags(ctx->trans, vseq, MODIFY_REPLACE, flags & ~(MAIL_RECENT)); /* copy keywords */ kw_names = mail_get_keywords(bbox->sync_mail);