From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from localhost (localhost [127.0.0.1]) by arlo.cworth.org (Postfix) with ESMTP id 301596DE14F2 for ; Sun, 27 Sep 2015 08:35:44 -0700 (PDT) X-Virus-Scanned: Debian amavisd-new at cworth.org X-Spam-Flag: NO X-Spam-Score: 0.107 X-Spam-Level: X-Spam-Status: No, score=0.107 tagged_above=-999 required=5 tests=[AWL=0.107] autolearn=disabled Received: from arlo.cworth.org ([127.0.0.1]) by localhost (arlo.cworth.org [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id oopH54vVdD6W for ; Sun, 27 Sep 2015 08:35:42 -0700 (PDT) Received: from gitolite.debian.net (gitolite.debian.net [87.98.215.224]) by arlo.cworth.org (Postfix) with ESMTPS id 6BD196DE14FD for ; Sun, 27 Sep 2015 08:35:42 -0700 (PDT) Received: from remotemail by gitolite.debian.net with local (Exim 4.80) (envelope-from ) id 1ZgDye-0008Fj-P1; Sun, 27 Sep 2015 15:35:00 +0000 Received: (nullmailer pid 11937 invoked by uid 1000); Sun, 27 Sep 2015 15:32:11 -0000 From: David Bremner To: notmuch@notmuchmail.org Subject: [Patch v4 4/9] cli: update to use new count API Date: Sun, 27 Sep 2015 12:31:58 -0300 Message-Id: <1443367923-11867-5-git-send-email-david@tethera.net> X-Mailer: git-send-email 2.5.3 In-Reply-To: <1443367923-11867-1-git-send-email-david@tethera.net> References: <1443367923-11867-1-git-send-email-david@tethera.net> X-BeenThere: notmuch@notmuchmail.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: "Use and development of the notmuch mail system." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 27 Sep 2015 15:35:44 -0000 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 be3e236..0b6e6f5 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 fd6a1ec..1357142 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 44e582c..6d08c25 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 e054808..5a83c60 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.5.3