From 9f884d31c1dd08ecb8a0faac044f4364fd617eca Mon Sep 17 00:00:00 2001 From: mdecimus <11444311+mdecimus@users.noreply.github.com> Date: Mon, 16 Feb 2026 17:27:48 +0000 Subject: [PATCH] Fix HasAttachment search field - credits @onevcat (closes #2778) --- crates/email/src/message/index/search.rs | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/crates/email/src/message/index/search.rs b/crates/email/src/message/index/search.rs index 81f9f983..06cdaaf3 100644 --- a/crates/email/src/message/index/search.rs +++ b/crates/email/src/message/index/search.rs @@ -8,7 +8,8 @@ use crate::message::{ index::{MAX_MESSAGE_PARTS, extractors::VisitTextArchived}, metadata::{ ArchivedMessageMetadata, ArchivedMetadataHeaderName, ArchivedMetadataHeaderValue, - ArchivedMetadataPartType, DecodedPartContent, MESSAGE_RECEIVED_MASK, MetadataHeaderName, + ArchivedMetadataPartType, DecodedPartContent, MESSAGE_HAS_ATTACHMENT, + MESSAGE_RECEIVED_MASK, MetadataHeaderName, }, }; use mail_parser::{DateTime, decoders::html::html_to_text, parsers::fields::thread::thread_name}; @@ -339,10 +340,10 @@ impl ArchivedMessageMetadata { #[cfg(feature = "test_mode")] document.set_unknown_language(default_language); - let has_attachment = - document.has_field(&(SearchField::Email(EmailSearchField::Attachment))); - - document.index_bool(EmailSearchField::HasAttachment, has_attachment); + document.index_bool( + EmailSearchField::HasAttachment, + self.rcvd_attach.to_native() & MESSAGE_HAS_ATTACHMENT != 0, + ); document } }