diff options
| author | Bart Trojanowski <bart@jukie.net> | 2009-11-27 17:49:54 -0500 |
|---|---|---|
| committer | Bart Trojanowski <bart@jukie.net> | 2009-11-27 17:49:54 -0500 |
| commit | 7a215c2de81e95798ecadd982eecf05e647c3988 (patch) | |
| tree | 86c47f448111eb03b81123c14740c4a2ebad6856 /lib/message.cc | |
| parent | 16a00de92421e1397e5089d9e9f41b44f4f51c22 (diff) | |
| parent | b7898b0c2a1038a9a0214dcac18c873a21070ccc (diff) | |
Merge remote branch 'origin/master' into vim
Diffstat (limited to 'lib/message.cc')
| -rw-r--r-- | lib/message.cc | 34 |
1 files changed, 3 insertions, 31 deletions
diff --git a/lib/message.cc b/lib/message.cc index e0834f1c..b708c181 100644 --- a/lib/message.cc +++ b/lib/message.cc @@ -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 |
