Mercurial > dovecot > original-hg > dovecot-1.2
changeset 6387:15defb570164 HEAD
If view is inconsistent, keep mail->seq valid anyway.
author | Timo Sirainen <tss@iki.fi> |
---|---|
date | Sat, 15 Sep 2007 13:07:46 +0300 |
parents | 1d993d28e12f |
children | 78b9315ed5ff |
files | src/lib-storage/index/index-mail.c |
diffstat | 1 files changed, 7 insertions(+), 8 deletions(-) [+] |
line wrap: on
line diff
--- a/src/lib-storage/index/index-mail.c Sat Sep 15 13:07:01 2007 +0300 +++ b/src/lib-storage/index/index-mail.c Sat Sep 15 13:07:46 2007 +0300 @@ -978,6 +978,9 @@ data->seq = seq; data->flags = rec->flags & MAIL_FLAGS_NONRECENT; + mail->mail.mail.seq = seq; + mail->mail.mail.uid = rec->uid; + if (mail_index_view_is_inconsistent(mail->trans->trans_view)) { mail_set_expunged(&mail->mail.mail); return; @@ -989,16 +992,12 @@ (void)index_mail_get_fixed_field(mail, MAIL_CACHE_FLAGS, &data->cache_flags, sizeof(data->cache_flags)); + mail->mail.mail.has_nuls = + (data->cache_flags & MAIL_CACHE_FLAG_HAS_NULS) != 0; + mail->mail.mail.has_no_nuls = + (data->cache_flags & MAIL_CACHE_FLAG_HAS_NO_NULS) != 0; } - /* set public fields */ - mail->mail.mail.seq = seq; - mail->mail.mail.uid = rec->uid; - mail->mail.mail.has_nuls = - (data->cache_flags & MAIL_CACHE_FLAG_HAS_NULS) != 0; - mail->mail.mail.has_no_nuls = - (data->cache_flags & MAIL_CACHE_FLAG_HAS_NO_NULS) != 0; - /* see if wanted_fields can tell us if we need to read/parse header/body */ if ((mail->wanted_fields & MAIL_FETCH_MESSAGE_PARTS) != 0) {