Mercurial > dovecot > original-hg > dovecot-1.2
changeset 2707:bd250ef1c09a HEAD
group multiple recent flag updates together
author | Timo Sirainen <tss@iki.fi> |
---|---|
date | Fri, 08 Oct 2004 20:06:18 +0300 |
parents | 21bb4bb2ca39 |
children | f1e9f3ec8135 |
files | src/lib-index/mail-index-sync.c |
diffstat | 1 files changed, 15 insertions(+), 2 deletions(-) [+] |
line wrap: on
line diff
--- a/src/lib-index/mail-index-sync.c Fri Oct 08 19:59:45 2004 +0300 +++ b/src/lib-index/mail-index-sync.c Fri Oct 08 20:06:18 2004 +0300 @@ -186,10 +186,23 @@ if (mail_index_lookup(ctx->view, seq, &rec) < 0) return -1; - if ((rec->flags & MAIL_RECENT) == 0) + if ((rec->flags & MAIL_RECENT) == 0) { + if (update.uid1 != 0) { + mail_index_sync_sort_flags(ctx->updates_buf, + &update, + sizeof(update)); + update.uid1 = 0; + } continue; + } - update.uid1 = update.uid2 = rec->uid; + /* group updates together as much as possible */ + if (update.uid1 == 0) + update.uid1 = rec->uid; + update.uid2 = rec->uid; + } + + if (update.uid1 != 0) { mail_index_sync_sort_flags(ctx->updates_buf, &update, sizeof(update)); }