From e7b420a85446fa469df77e24c11f8afa06a2592e Mon Sep 17 00:00:00 2001 From: David Bremner Date: Sun, 27 Sep 2015 12:31:58 -0300 Subject: [PATCH] cli: update to use new count API Essentially replace each call to notmuch_count_* with the corresponding _st call, followed by print_status_query. --- notmuch-count.c | 12 ++++++++++-- notmuch-reply.c | 7 ++++++- notmuch-search.c | 16 ++++++++++++++-- notmuch-show.c | 7 ++++++- 4 files changed, 36 insertions(+), 6 deletions(-) diff --git a/notmuch-count.c b/notmuch-count.c index be3e2365..0b6e6f54 100644 --- a/notmuch-count.c +++ b/notmuch-count.c @@ -75,9 +75,11 @@ print_count (notmuch_database_t *notmuch, const char *query_str, notmuch_query_t *query; size_t i; int count; + unsigned int ucount; unsigned long revision; const char *uuid; int ret = 0; + notmuch_status_t status; query = notmuch_query_create (notmuch, query_str); if (query == NULL) { @@ -90,10 +92,16 @@ print_count (notmuch_database_t *notmuch, const char *query_str, switch (output) { case OUTPUT_MESSAGES: - printf ("%u", notmuch_query_count_messages (query)); + status = notmuch_query_count_messages_st (query, &ucount); + if (print_status_query ("notmuch count", query, status)) + return -1; + printf ("%u", ucount); break; case OUTPUT_THREADS: - printf ("%u", notmuch_query_count_threads (query)); + status = notmuch_query_count_threads_st (query, &ucount); + if (print_status_query ("notmuch count", query, status)) + return -1; + printf ("%u", ucount); break; case OUTPUT_FILES: count = count_files (query); diff --git a/notmuch-reply.c b/notmuch-reply.c index fd6a1ec1..13571429 100644 --- a/notmuch-reply.c +++ b/notmuch-reply.c @@ -655,9 +655,14 @@ notmuch_reply_format_sprinter(void *ctx, notmuch_messages_t *messages; notmuch_message_t *message; mime_node_t *node; + unsigned count; notmuch_status_t status; - if (notmuch_query_count_messages (query) != 1) { + status = notmuch_query_count_messages_st (query, &count); + if (print_status_query ("notmuch reply", query, status)) + return 1; + + if (count != 1) { fprintf (stderr, "Error: search term did not match precisely one message.\n"); return 1; } diff --git a/notmuch-search.c b/notmuch-search.c index 44e582cb..6d08c250 100644 --- a/notmuch-search.c +++ b/notmuch-search.c @@ -121,7 +121,13 @@ do_search_threads (search_context_t *ctx) notmuch_status_t status; if (ctx->offset < 0) { - ctx->offset += notmuch_query_count_threads (ctx->query); + unsigned count; + notmuch_status_t status; + status = notmuch_query_count_threads_st (ctx->query, &count); + if (print_status_query ("notmuch search", ctx->query, status)) + return 1; + + ctx->offset += count; if (ctx->offset < 0) ctx->offset = 0; } @@ -521,7 +527,13 @@ do_search_messages (search_context_t *ctx) notmuch_status_t status; if (ctx->offset < 0) { - ctx->offset += notmuch_query_count_messages (ctx->query); + unsigned count; + notmuch_status_t status; + status = notmuch_query_count_messages_st (ctx->query, &count); + if (print_status_query ("notmuch search", ctx->query, status)) + return 1; + + ctx->offset += count; if (ctx->offset < 0) ctx->offset = 0; } diff --git a/notmuch-show.c b/notmuch-show.c index e0548089..5a83c605 100644 --- a/notmuch-show.c +++ b/notmuch-show.c @@ -896,8 +896,13 @@ do_show_single (void *ctx, notmuch_messages_t *messages; notmuch_message_t *message; notmuch_status_t status; + unsigned int count; - if (notmuch_query_count_messages (query) != 1) { + status = notmuch_query_count_messages_st (query, &count); + if (print_status_query ("notmuch show", query, status)) + return 1; + + if (count != 1) { fprintf (stderr, "Error: search term did not match precisely one message.\n"); return 1; } -- 2.26.2