]> git.ipfire.org Git - thirdparty/dovecot/core.git/commitdiff
lib-storage: Write vsize record always for <4GB-1 mails
authorsergey.kitov <sergey.kitov@open-xchange.com>
Thu, 15 Dec 2022 14:39:21 +0000 (16:39 +0200)
committeraki.tuomi <aki.tuomi@open-xchange.com>
Thu, 12 Jan 2023 19:40:02 +0000 (19:40 +0000)
src/lib-storage/index/index-mail.c

index e653c087588416037283800086acef4d8e936c9c..205ee7ab022697173e322a460ed18f273f730184 100644 (file)
@@ -995,7 +995,6 @@ static void index_mail_save_finish_make_snippet(struct index_mail *mail)
 static void index_mail_cache_sizes(struct index_mail *mail)
 {
        struct mail *_mail = &mail->mail.mail;
-       struct mail_index_view *view = _mail->transaction->view;
 
        static enum index_cache_field size_fields[] = {
                MAIL_CACHE_VIRTUAL_FULL_SIZE,
@@ -1016,10 +1015,7 @@ static void index_mail_cache_sizes(struct index_mail *mail)
                size is not cached or
                cached size differs
        */
-       if ((mail_index_map_get_ext_idx(view->index->map, _mail->box->mail_vsize_ext_id, &idx) ||
-            mail_index_map_get_ext_idx(view->index->map, _mail->box->vsize_hdr_ext_id, &idx)) &&
-           (sizes[0] != UOFF_T_MAX &&
-            sizes[0] < (uint32_t)-1)) {
+       if ((sizes[0] != UOFF_T_MAX && sizes[0] < (uint32_t)-1)) {
                const uint32_t *vsize_ext =
                        index_mail_get_vsize_extension(_mail);
                /* vsize = 0 means it's not present in index, consult cache.