* mu-msg-fields; mu-store-xapian: fix body indexing

This commit is contained in:
Dirk-Jan C. Binnema 2009-12-09 20:21:28 +02:00
parent e3a834da74
commit 64ea16b1a8
2 changed files with 10 additions and 7 deletions

View File

@ -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);
}

View File

@ -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 {