[PATCH] lib: return "" rather than NULL from notmuch_thread_get_authors
David Bremner
david at tethera.net
Thu Dec 14 18:29:57 PST 2017
The current beheviour is at best underdocumented. The modified test in
T470-missing-headers.sh previously relied on printf doing the right
thing with NULL, which seems ick.
The use of talloc_strdup here is probably overkill, but it avoids
having to enforce that thread->authors is never mutated outside
_resolve_thread_authors_string.
---
lib/thread.cc | 3 +++
test/T470-missing-headers.sh | 2 +-
2 files changed, 4 insertions(+), 1 deletion(-)
diff --git a/lib/thread.cc b/lib/thread.cc
index 1632da4c..3561b27f 100644
--- a/lib/thread.cc
+++ b/lib/thread.cc
@@ -160,6 +160,9 @@ _resolve_thread_authors_string (notmuch_thread_t *thread)
thread->authors_array = NULL;
g_ptr_array_free (thread->matched_authors_array, true);
thread->matched_authors_array = NULL;
+
+ if (!thread->authors)
+ thread->authors = talloc_strdup(thread, "");
}
/* clean up the ugly "Lastname, Firstname" format that some mail systems
diff --git a/test/T470-missing-headers.sh b/test/T470-missing-headers.sh
index 4bf5d285..555fd4e9 100755
--- a/test/T470-missing-headers.sh
+++ b/test/T470-missing-headers.sh
@@ -25,7 +25,7 @@ NOTMUCH_NEW >/dev/null
test_begin_subtest "Search: text"
output=$(notmuch search '*' | notmuch_search_sanitize)
test_expect_equal "$output" "\
-thread:XXX 2001-01-05 [1/1] (null); (inbox unread)
+thread:XXX 2001-01-05 [1/1] ; (inbox unread)
thread:XXX 1970-01-01 [1/1] Notmuch Test Suite; (inbox unread)"
test_begin_subtest "Search: json"
--
2.15.1
More information about the notmuch
mailing list