diff options
author | David Bremner <david@tethera.net> | 2014-01-23 08:24:01 -0400 |
---|---|---|
committer | David Bremner <david@tethera.net> | 2014-01-24 20:24:11 -0400 |
commit | ecbb29e8cea404faab2ef55b06431942ee329941 (patch) | |
tree | bc7ccf665dc7a9d34af486a9bc4c8b9374431f58 | |
parent | 29f125212619ebca8621dd2106b412b22e1b6d22 (diff) |
notmuch-show: detect NULL pointer returned from notmuch_query_search_threads
We want to return an error status, not 0 or (worse) segfault.
-rw-r--r-- | notmuch-show.c | 6 | ||||
-rwxr-xr-x | test/T520-show.sh | 1 |
2 files changed, 5 insertions, 2 deletions
diff --git a/notmuch-show.c b/notmuch-show.c index 528694be..d416fbd5 100644 --- a/notmuch-show.c +++ b/notmuch-show.c @@ -1015,9 +1015,13 @@ do_show (void *ctx, notmuch_messages_t *messages; notmuch_status_t status, res = NOTMUCH_STATUS_SUCCESS; + threads = notmuch_query_search_threads (query); + if (! threads) + return 1; + sp->begin_list (sp); - for (threads = notmuch_query_search_threads (query); + for ( ; notmuch_threads_valid (threads); notmuch_threads_move_to_next (threads)) { diff --git a/test/T520-show.sh b/test/T520-show.sh index bdd9d716..0657c993 100755 --- a/test/T520-show.sh +++ b/test/T520-show.sh @@ -6,7 +6,6 @@ test_description='"notmuch show"' add_email_corpus test_begin_subtest "exit code for show invalid query" -test_subtest_known_broken notmuch show foo.. exit_code=$? test_expect_equal 1 $exit_code |