From 7ceccd68bb49130e73e290eae4292cb0c76bff22 Mon Sep 17 00:00:00 2001 From: Aki Tuomi Date: Wed, 15 May 2019 10:49:09 +0300 Subject: [PATCH] lib-storage: Don't try to set attachment keywords if bodystructure wasn't parsed This was broken in 057028e3f5567e21c964005ffccda1055fa86508 as there are code paths leading here that omit bodystructure processing. Fixes Panic: file index-mail.c: line 1150 (index_mail_parse_body_finish): assertion failed: (mail->data.parsed_bodystructure) --- src/lib-storage/index/index-mail.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/lib-storage/index/index-mail.c b/src/lib-storage/index/index-mail.c index 716a3b0f48..31806030c2 100644 --- a/src/lib-storage/index/index-mail.c +++ b/src/lib-storage/index/index-mail.c @@ -1145,9 +1145,9 @@ index_mail_parse_body_finish(struct index_mail *mail, index_mail_cache_sizes(mail); index_mail_cache_dates(mail); if (mail_set->parsed_mail_attachment_detection_add_flags_on_save && + mail->data.parsed_bodystructure && !mail_has_attachment_keywords(&mail->mail.mail)) { i_assert(mail->data.parts != NULL); - i_assert(mail->data.parsed_bodystructure); (void)mail_set_attachment_keywords(&mail->mail.mail); } return 0; -- 2.47.3