From a01956924eb5b7fd4077b1c6678cbc53faa99d43 Mon Sep 17 00:00:00 2001 From: Jameson Graef Rollins Date: Mon, 23 May 2011 15:38:49 -0700 Subject: [PATCH] use format=raw by default when requesting part with --part= This makes part retrieval a little more intuitive, since generally one will always want to retrieve parts in raw form. --- notmuch-show.c | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/notmuch-show.c b/notmuch-show.c index c57f7bd0..d11a2b81 100644 --- a/notmuch-show.c +++ b/notmuch-show.c @@ -710,6 +710,7 @@ notmuch_show_command (void *ctx, unused (int argc), unused (char *argv[])) const notmuch_show_format_t *format = &format_text; notmuch_show_params_t params; int mbox = 0; + int format_specified = 0; int i; params.entire_thread = 0; @@ -738,6 +739,7 @@ notmuch_show_command (void *ctx, unused (int argc), unused (char *argv[])) fprintf (stderr, "Invalid value for --format: %s\n", opt); return 1; } + format_specified = 1; } else if (STRNCMP_LITERAL (argv[i], "--part=") == 0) { params.part = atoi(argv[i] + sizeof ("--part=") - 1); } else if (STRNCMP_LITERAL (argv[i], "--entire-thread") == 0) { @@ -782,6 +784,10 @@ notmuch_show_command (void *ctx, unused (int argc), unused (char *argv[])) return 1; } + /* if part was requested and format was not specified, use format=raw */ + if (params.part >= 0 && !format_specified) + format = &format_raw; + /* If --format=raw specified without specifying part, we can only * output single message, so set part=0 */ if (params.raw && params.part < 0) -- 2.26.2