Rework of Editor/defaulteditor, similar to Pager/defaultpager; new env vars.
[mmh] / uip / whatnowproc.c
index 8d6830e..fbea941 100644 (file)
 ** This routine is used by comp, repl, forw, and dist to exec
 ** the "whatnowproc".  It first sets up all the environment
 ** variables that the "whatnowproc" will need to check, and
-** then execs the command.  As an optimization, if the
-** "whatnowproc" is the nmh command "whatnow" (typical case),
-** it will call this routine directly without exec'ing it.
+** then execs the command.
 */
-
-/* from whatnowsbr.c */
-int WhatNow(int, char **);
-
-
 int
 what_now(char *ed, int nedit, int use, char *file, char *altmsg, int dist,
-       struct msgs *mp, char *text, int inplace, char *cwd)
+       struct msgs *mp, char *text, char *cwd)
 {
        int found, k, msgnum, vecp;
        int len, buflen;
@@ -58,15 +51,13 @@ what_now(char *ed, int nedit, int use, char *file, char *altmsg, int dist,
        if (nedit) {
                unputenv("mheditor");
        } else {
-               m_putenv("mheditor", ed ? ed : (ed = context_find("editor")) ?
-                               ed : defaulteditor);
+               m_putenv("mheditor", ed ? ed : defaulteditor);
        }
        snprintf(buffer, sizeof(buffer), "%d", use);
        m_putenv("mhuse", buffer);
 
        unputenv("mhmessages");
        unputenv("mhannotate");
-       unputenv("mhinplace");
 
        if (text && mp && !is_readonly(mp)) {
                found = 0;
@@ -94,8 +85,6 @@ what_now(char *ed, int nedit, int use, char *file, char *altmsg, int dist,
                if (found) {
                        m_putenv("mhmessages", buffer);
                        m_putenv("mhannotate", text);
-                       snprintf(buffer, sizeof(buffer), "%d", inplace);
-                       m_putenv("mhinplace", buffer);
                }
        }
 
@@ -105,15 +94,6 @@ what_now(char *ed, int nedit, int use, char *file, char *altmsg, int dist,
        if (cwd)
                chdir(cwd);
 
-       /*
-       ** If the "whatnowproc" is the nmh command "whatnow",
-       ** we run it internally, rather than exec'ing it.
-       */
-       if (strcmp(vec[0], "whatnow") == 0) {
-               WhatNow(vecp, vec);
-               done(0);
-       }
-
        execvp(whatnowproc, vec);
        fprintf(stderr, "unable to exec ");
        perror(whatnowproc);