From: Michal Sojka Date: Mon, 1 Nov 2010 16:15:40 +0000 (+0100) Subject: Print nothing when search result is empty X-Git-Tag: 0.5~73 X-Git-Url: https://git.notmuchmail.org/git?p=notmuch;a=commitdiff_plain;h=772bde847c4bbf3efa8ec7a333c64d19915339f1 Print nothing when search result is empty This change affects both text and json formats. Now, text format behaves as before commit 6dcb7592, but json format is changed. Earlier, the empty search returned '[]', now it returns ''. The emacs interface seems not to be affected by this change. --- diff --git a/notmuch-search.c b/notmuch-search.c index 5907c2ee..bb989dac 100644 --- a/notmuch-search.c +++ b/notmuch-search.c @@ -189,7 +189,9 @@ do_search_threads (const void *ctx, { int first_tag = 1; - if (! first_thread) + if (first_thread) + fputs (format->results_start, stdout); + else fputs (format->item_sep, stdout); thread = notmuch_threads_get (threads); @@ -235,6 +237,9 @@ do_search_threads (const void *ctx, notmuch_thread_destroy (thread); } + if (! first_thread) + fputs (format->results_end, stdout); + return 0; } @@ -258,7 +263,9 @@ do_search_messages (const void *ctx, { message = notmuch_messages_get (messages); - if (! first_message) + if (first_message) + fputs (format->results_start, stdout); + else fputs (format->item_sep, stdout); if (output == OUTPUT_FILES) { @@ -276,6 +283,9 @@ do_search_messages (const void *ctx, notmuch_messages_destroy (messages); + if (! first_message) + fputs (format->results_end, stdout); + return 0; } @@ -415,8 +425,6 @@ notmuch_search_command (void *ctx, int argc, char *argv[]) notmuch_query_set_sort (query, sort); - fputs (format->results_start, stdout); - switch (output) { default: case OUTPUT_SUMMARY: @@ -432,8 +440,6 @@ notmuch_search_command (void *ctx, int argc, char *argv[]) break; } - fputs (format->results_end, stdout); - notmuch_query_destroy (query); notmuch_database_close (notmuch);