notmuch_messages_move_to_next (messages)) {
message = notmuch_messages_get (messages);
- if (mime_node_open (notmuch, message, ¶ms->crypto, &node))
+ if (mime_node_open (notmuch, message, params->duplicate, ¶ms->crypto, &node))
return 1;
reply = create_reply_message (notmuch, message,
/* Start the original */
sp->map_key (sp, "original");
- format_part_sprinter (notmuch, sp, node, true, false);
+ format_part_sprinter (notmuch, sp, node, params->duplicate, true, false);
/* End */
sp->end (sp);
int opt_index;
notmuch_show_params_t params = {
.part = -1,
+ .duplicate = 0,
.crypto = { .decrypt = NOTMUCH_DECRYPT_AUTO },
};
int format = FORMAT_DEFAULT;
int reply_all = true;
+ notmuch_status_t status;
notmuch_opt_desc_t options[] = {
{ .opt_keyword = &format, .name = "format", .keywords =
{ "auto", NOTMUCH_DECRYPT_AUTO },
{ "true", NOTMUCH_DECRYPT_NOSTASH },
{ 0, 0 } } },
+ { .opt_int = ¶ms.duplicate, .name = "duplicate" },
{ .opt_inherit = notmuch_shared_options },
{ }
};
return EXIT_FAILURE;
}
- query = notmuch_query_create (notmuch, query_string);
- if (query == NULL) {
- fprintf (stderr, "Out of memory\n");
+ status = notmuch_query_create_with_syntax (notmuch, query_string,
+ shared_option_query_syntax (),
+ &query);
+ if (print_status_database ("notmuch reply", notmuch, status))
return EXIT_FAILURE;
- }
if (do_reply (notmuch, query, ¶ms, format, reply_all) != 0)
return EXIT_FAILURE;