summary |
shortlog |
log |
commit | commitdiff |
tree
raw |
patch |
inline | side by side (from parent 1:
4971b85)
We know that matched messages are always added in order, so we can
always just grab the subject from the first message. This is the same
approach that was used previously in _thread_add_message. That is, the
recent feature of renaming a thread based on the subject of the
"first" matched message is as simple as moving the subject assignment
from _thread_add_message to _thread_add_matched_message.
g_object_unref (G_OBJECT (list));
}
g_object_unref (G_OBJECT (list));
}
- if (! thread->subject) {
- const char *subject;
- subject = notmuch_message_get_header (message, "subject");
- thread->subject = talloc_strdup (thread, subject);
- }
-
for (tags = notmuch_message_get_tags (message);
notmuch_tags_valid (tags);
notmuch_tags_move_to_next (tags))
for (tags = notmuch_message_get_tags (message);
notmuch_tags_valid (tags);
notmuch_tags_move_to_next (tags))
if (date > thread->newest || ! thread->matched_messages)
thread->newest = date;
if (date > thread->newest || ! thread->matched_messages)
thread->newest = date;
- const char *subject;
- const char *cleaned_subject;
-
- subject = notmuch_message_get_header (message, "subject");
-
- if ((strncasecmp (subject, "Re: ", 4) == 0) ||
- (strncasecmp (subject, "Aw: ", 4) == 0) ||
- (strncasecmp (subject, "Vs: ", 4) == 0) ||
- (strncasecmp (subject, "Sv: ", 4) == 0)) {
+ if (! thread->subject) {
+ const char *subject;
- cleaned_subject = talloc_strndup (thread,
- subject + 4,
- strlen(subject) - 4);
- } else {
- cleaned_subject = talloc_strdup (thread, subject);
- }
+ subject = notmuch_message_get_header (message, "subject");
- if ((sort == NOTMUCH_SORT_OLDEST_FIRST && date <= thread->newest) ||
- (sort != NOTMUCH_SORT_OLDEST_FIRST && date == thread->newest)) {
- thread->subject = talloc_strdup (thread, cleaned_subject);
+ if ((strncasecmp (subject, "Re: ", 4) == 0) ||
+ (strncasecmp (subject, "Aw: ", 4) == 0) ||
+ (strncasecmp (subject, "Vs: ", 4) == 0) ||
+ (strncasecmp (subject, "Sv: ", 4) == 0))
+ {
+ thread->subject = talloc_strdup (thread, subject + 4);
+ }
+ else
+ {
+ thread->subject = talloc_strdup (thread, subject);
+ }
}
thread->matched_messages++;
}
thread->matched_messages++;