X-Git-Url: https://git.notmuchmail.org/git?p=notmuch;a=blobdiff_plain;f=lib%2Fmessage.cc;h=03b8c812eeef3238a7b5e7affde23f7b53bf85d6;hp=e0834f1c7816c6c66a9f0f4286ce33ef0b117f3c;hb=0a7bd1c728390efc5cc000987f6dd42638314328;hpb=682aa2e076665db3bc344deb13033b1d480e6b6f diff --git a/lib/message.cc b/lib/message.cc index e0834f1c..03b8c812 100644 --- a/lib/message.cc +++ b/lib/message.cc @@ -320,7 +320,7 @@ _notmuch_message_get_in_reply_to (notmuch_message_t *message) if (i != message->doc.termlist_end () && strncmp ((*i).c_str (), prefix, prefix_len)) { - INTERNAL_ERROR ("Message %s has duplicate In-Reply-To IDs: %s and %s\n" + INTERNAL_ERROR ("Message %s has duplicate In-Reply-To IDs: %s and %s\n", notmuch_message_get_message_id (message), message->in_reply_to, (*i).c_str () + prefix_len); @@ -482,38 +482,10 @@ notmuch_message_get_date (notmuch_message_t *message) notmuch_tags_t * notmuch_message_get_tags (notmuch_message_t *message) { - const char *prefix = _find_prefix ("tag"); Xapian::TermIterator i, end; - notmuch_tags_t *tags; - std::string tag; - - /* Currently this iteration is written with the assumption that - * "tag" has a single-character prefix. */ - assert (strlen (prefix) == 1); - - tags = _notmuch_tags_create (message); - if (unlikely (tags == NULL)) - return NULL; - - i = message->doc.termlist_begin (); - end = message->doc.termlist_end (); - - i.skip_to (prefix); - - while (i != end) { - tag = *i; - - if (tag.empty () || tag[0] != *prefix) - break; - - _notmuch_tags_add_tag (tags, tag.c_str () + 1); - - i++; - } - - _notmuch_tags_prepare_iterator (tags); - - return tags; + i = message->doc.termlist_begin(); + end = message->doc.termlist_end(); + return _notmuch_convert_tags(message, i, end); } void