X-Git-Url: https://git.notmuchmail.org/git?p=notmuch;a=blobdiff_plain;f=notmuch-reply.c;h=fd6a1ec1b11ddb5d9def9ae88f1aa4c59a4ea31a;hp=e18370f8579107a84be9e2e515e8f3bfb05ed7d2;hb=81bd41c7cb59a8d70932e6bdbee6e1e2cde5477f;hpb=21ecd7369aa2aa24d26775c3fe5edcb437914774 diff --git a/notmuch-reply.c b/notmuch-reply.c index e18370f8..fd6a1ec1 100644 --- a/notmuch-reply.c +++ b/notmuch-reply.c @@ -606,8 +606,13 @@ notmuch_reply_format_default(void *ctx, notmuch_messages_t *messages; notmuch_message_t *message; mime_node_t *root; + notmuch_status_t status; - for (messages = notmuch_query_search_messages (query); + status = notmuch_query_search_messages_st (query, &messages); + if (print_status_query ("notmuch reply", query, status)) + return 1; + + for (; notmuch_messages_valid (messages); notmuch_messages_move_to_next (messages)) { @@ -650,13 +655,17 @@ notmuch_reply_format_sprinter(void *ctx, notmuch_messages_t *messages; notmuch_message_t *message; mime_node_t *node; + notmuch_status_t status; if (notmuch_query_count_messages (query) != 1) { fprintf (stderr, "Error: search term did not match precisely one message.\n"); return 1; } - messages = notmuch_query_search_messages (query); + status = notmuch_query_search_messages_st (query, &messages); + if (print_status_query ("notmuch reply", query, status)) + return 1; + message = notmuch_messages_get (messages); if (mime_node_open (ctx, message, &(params->crypto), &node) != NOTMUCH_STATUS_SUCCESS) return 1; @@ -698,8 +707,13 @@ notmuch_reply_format_headers_only(void *ctx, notmuch_message_t *message; const char *in_reply_to, *orig_references, *references; char *reply_headers; + notmuch_status_t status; - for (messages = notmuch_query_search_messages (query); + status = notmuch_query_search_messages_st (query, &messages); + if (print_status_query ("notmuch reply", query, status)) + return 1; + + for (; notmuch_messages_valid (messages); notmuch_messages_move_to_next (messages)) { @@ -790,6 +804,7 @@ notmuch_reply_command (notmuch_config_t *config, int argc, char *argv[]) { "sender", FALSE }, { 0, 0 } } }, { NOTMUCH_OPT_BOOLEAN, ¶ms.crypto.decrypt, "decrypt", 'd', 0 }, + { NOTMUCH_OPT_INHERIT, (void *) ¬much_shared_options, NULL, 0, 0 }, { 0, 0, 0, 0, 0 } }; @@ -797,6 +812,8 @@ notmuch_reply_command (notmuch_config_t *config, int argc, char *argv[]) if (opt_index < 0) return EXIT_FAILURE; + notmuch_process_shared_options (argv[0]); + if (format == FORMAT_HEADERS_ONLY) { reply_format_func = notmuch_reply_format_headers_only; } else if (format == FORMAT_JSON) { @@ -822,10 +839,14 @@ notmuch_reply_command (notmuch_config_t *config, int argc, char *argv[]) return EXIT_FAILURE; } + params.crypto.gpgpath = notmuch_config_get_crypto_gpg_path (config); + if (notmuch_database_open (notmuch_config_get_database_path (config), NOTMUCH_DATABASE_MODE_READ_ONLY, ¬much)) return EXIT_FAILURE; + notmuch_exit_if_unmatched_db_uuid (notmuch); + query = notmuch_query_create (notmuch, query_string); if (query == NULL) { fprintf (stderr, "Out of memory\n");