From 64ea16b1a8c35f48f549b4710b45cdd52ce92a19 Mon Sep 17 00:00:00 2001 From: "Dirk-Jan C. Binnema" Date: Wed, 9 Dec 2009 20:21:28 +0200 Subject: [PATCH] * mu-msg-fields; mu-store-xapian: fix body indexing --- src/mu-msg-fields.c | 2 +- src/mu-store-xapian.cc | 15 +++++++++------ 2 files changed, 10 insertions(+), 7 deletions(-) diff --git a/src/mu-msg-fields.c b/src/mu-msg-fields.c index 39110b40..daab3a59 100644 --- a/src/mu-msg-fields.c +++ b/src/mu-msg-fields.c @@ -200,7 +200,7 @@ gboolean mu_msg_field_is_xapian_enabled (const MuMsgField *field) { g_return_val_if_fail (field, FALSE); - return field->_flags & FLAG_XAPIAN; + return field->_flags & (FLAG_XAPIAN|FLAG_XAPIAN_INDEX); } diff --git a/src/mu-store-xapian.cc b/src/mu-store-xapian.cc index b8be8d0d..7e02d568 100644 --- a/src/mu-store-xapian.cc +++ b/src/mu-store-xapian.cc @@ -150,21 +150,24 @@ add_terms_values_string (Xapian::Document& doc, MuMsgGMime *msg, static void add_terms_values_body (Xapian::Document& doc, MuMsgGMime *msg, const MuMsgField* field) -{ +{ + const char *str; + if (mu_msg_gmime_get_flags(msg) & MU_MSG_FLAG_ENCRYPTED) return; /* don't store encrypted bodies */ - const char *str = mu_msg_gmime_get_body_text(msg); - // if (!str) /* FIXME: html->html fallback */ - // str = mu_msg_gmime_get_body_html(msg); + str = mu_msg_gmime_get_body_text(msg); + if (!str) /* FIXME: html->html fallback */ + str = mu_msg_gmime_get_body_html (msg); - if (!str) + if (!str) { + //g_warning ("no body found"); return; /* no body... */ + } Xapian::TermGenerator termgen; termgen.set_document(doc); termgen.index_text(str, 1, mu_msg_field_xapian_prefix(field)); - } struct _MsgDoc {