unofficial mirror of notmuch@notmuchmail.org
 help / color / mirror / code / Atom feed
* [PATCH] Avoid empty thread names if possible.
@ 2014-10-07 16:35 Jesse Rosenthal
  2014-10-08 15:40 ` Sergei Shilovsky
                   ` (2 more replies)
  0 siblings, 3 replies; 12+ messages in thread
From: Jesse Rosenthal @ 2014-10-07 16:35 UTC (permalink / raw)
  To: notmuch

Currently the thread is named based on either the oldest or newest
matching message (depending on the search order). If this message has
an empty subject, though, the thread will show up with an empty
subject in the search results. (See the thread starting with
`id:1412371140-21051-1-git-send-email-david@tethera.net` for an
example.)

This patch changes the behavior to name based on the oldest/newest
matching non-empty subject. This is particularly helpful for patchsets.
If the only subjects are empty, the thread subject will still be empty.

Signed-off-by: Jesse Rosenthal <jrosenthal@jhu.edu>
---
 lib/thread.cc | 6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)

diff --git a/lib/thread.cc b/lib/thread.cc
index 8922403..ea10295 100644
--- a/lib/thread.cc
+++ b/lib/thread.cc
@@ -348,18 +348,20 @@ _thread_add_matched_message (notmuch_thread_t *thread,
 {
     time_t date;
     notmuch_message_t *hashed_message;
+    const char *cur_subject;
 
     date = notmuch_message_get_date (message);
+    cur_subject = notmuch_thread_get_subject (thread);
 
     if (date < thread->oldest || ! thread->matched_messages) {
 	thread->oldest = date;
-	if (sort == NOTMUCH_SORT_OLDEST_FIRST)
+	if (sort == NOTMUCH_SORT_OLDEST_FIRST || strlen(cur_subject) == 0)
 	    _thread_set_subject_from_message (thread, message);
     }
 
     if (date > thread->newest || ! thread->matched_messages) {
 	thread->newest = date;
-	if (sort != NOTMUCH_SORT_OLDEST_FIRST)
+	if (sort != NOTMUCH_SORT_OLDEST_FIRST || strlen(cur_subject) == 0)
 	    _thread_set_subject_from_message (thread, message);
     }
 
-- 
2.1.2

^ permalink raw reply related	[flat|nested] 12+ messages in thread

end of thread, other threads:[~2014-10-29 15:15 UTC | newest]

Thread overview: 12+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2014-10-07 16:35 [PATCH] Avoid empty thread names if possible Jesse Rosenthal
2014-10-08 15:40 ` Sergei Shilovsky
2014-10-28 17:44   ` Jani Nikula
2014-10-28 21:36 ` Tomi Ollila
2014-10-29 13:21   ` Jesse Rosenthal
2014-10-29  8:34 ` Mark Walters
2014-10-29 13:05   ` Jesse Rosenthal
2014-10-29 13:07   ` Jesse Rosenthal
2014-10-29 13:27     ` Jesse Rosenthal
2014-10-29 13:32     ` Tomi Ollila
2014-10-29 13:39   ` Jesse Rosenthal
2014-10-29 15:15     ` Mark Walters

Code repositories for project(s) associated with this public inbox

	https://yhetil.org/notmuch.git/

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).