Commit 2b6416ef 2b6416ef15089f8780583bfa773ac8878f9e44f3 by Sergey Poznyakoff

mh: fix the -nowhatnowproc option

The -nowhatnowproc option inhibits the invocation of whatnow, and
consequently, prevents the editing of the draft from occurring.
1 parent c0920d67
......@@ -75,6 +75,7 @@ struct mh_option mh_option[] = {
struct mh_whatnow_env wh_env = { 0 };
static int initial_edit = 1;
static const char *whatnowproc;
static int nowhatnowproc;
char *formfile;
static int build_only = 0; /* --build flag */
static int use_draft = 0; /* --use flag */
......@@ -143,7 +144,7 @@ opt_handler (int key, char *arg, struct argp_state *state)
break;
case ARG_NOWHATNOWPROC:
whatnowproc = NULL;
nowhatnowproc = 1;
break;
case ARGP_KEY_FINI:
......@@ -304,7 +305,7 @@ main (int argc, char **argv)
}
/* Exit immediately if --build is given */
if (build_only)
if (build_only || nowhatnowproc)
return 0;
return mh_whatnowproc (&wh_env, initial_edit, whatnowproc);
......
......@@ -107,6 +107,7 @@ static const char *whatnowproc;
static char *mhl_filter_file = NULL; /* --filter flag */
static int build_only = 0; /* --build flag */
static int nowhatnowproc = 0; /* --nowhatnowproc */
static int annotate = 0; /* --annotate flag */
static enum encap_type encap = encap_clear; /* controlled by --format, --form
and --mime flags */
......@@ -222,7 +223,7 @@ opt_handler (int key, char *arg, struct argp_state *state)
break;
case ARG_NOWHATNOWPROC:
whatnowproc = NULL;
nowhatnowproc = 1;
break;
case ARGP_KEY_FINI:
......@@ -530,7 +531,7 @@ main (int argc, char **argv)
}
/* Exit immediately if --build is given */
if (build_only)
if (build_only || nowhatnowproc)
{
if (strcmp (wh_env.file, wh_env.draftfile))
rename (wh_env.file, wh_env.draftfile);
......
......@@ -226,7 +226,7 @@ mh_global_save_state ()
rc = mu_property_save (mu_mh_context);
if (rc)
{
mu_diag_funcall (MU_DIAG_ERROR, "mu_profile_save", "context", rc);
mu_diag_funcall (MU_DIAG_ERROR, "mu_property_save", "context", rc);
exit (1);
}
}
......
......@@ -115,6 +115,7 @@ static const char *whatnowproc;
static mu_msgset_t msgset;
static mu_mailbox_t mbox;
static int build_only = 0; /* --build flag */
static int nowhatnowproc = 0; /* --nowhatnowproc */
static int query_mode = 0; /* --query flag */
static int use_draft = 0; /* --use flag */
static char *mhl_filter = NULL; /* --filter flag */
......@@ -261,7 +262,7 @@ opt_handler (int key, char *arg, struct argp_state *state)
break;
case ARG_NOWHATNOWPROC:
whatnowproc = NULL;
nowhatnowproc = 1;
break;
case ARGP_KEY_FINI:
......@@ -432,7 +433,7 @@ main (int argc, char **argv)
make_draft (mbox, DISP_REPLACE, &wh_env);
/* Exit immediately if --build is given */
if (build_only)
if (build_only || nowhatnowproc)
return 0;
rc = mh_whatnowproc (&wh_env, initial_edit, whatnowproc);
......