Fix uip/whom.c for C89 compatibility
[mmh] / uip / whatnowproc.c
index 12cd13a..765ed8a 100644 (file)
@@ -7,6 +7,7 @@
 */
 
 #include <h/mh.h>
+#include <unistd.h>
 
 
 /*
 ** then execs the command.
 */
 int
-what_now(char *ed, int nedit, int use, char *file, char *altmsg, int dist,
-       struct msgs *mp, char *text, int inplace, char *cwd)
+what_now(char *ed, int use, char *file, char *altmsg, int dist,
+       struct msgs *mp, char *text, char *cwd)
 {
        int found, k, msgnum, vecp;
        int len, buflen;
-       register char *bp;
+       char *bp;
        char buffer[BUFSIZ], *vec[MAXARGS];
 
        vecp = 0;
@@ -44,22 +45,20 @@ what_now(char *ed, int nedit, int use, char *file, char *altmsg, int dist,
        } else {
                unputenv("mhaltmsg");
        }
-       if ((bp = getenv("mhaltmsg")))/* XXX */
-               m_putenv("editalt", bp);
        snprintf(buffer, sizeof(buffer), "%d", dist);
        m_putenv("mhdist", buffer);
-       if (nedit) {
-               unputenv("mheditor");
+       if (!ed) {
+               m_putenv("mheditor", defaulteditor);
+       } else if (*ed) {
+               m_putenv("mheditor", ed);
        } else {
-               m_putenv("mheditor", ed ? ed : (ed = context_find("editor")) ?
-                               ed : defaulteditor);
+               unputenv("mheditor");
        }
        snprintf(buffer, sizeof(buffer), "%d", use);
        m_putenv("mhuse", buffer);
 
        unputenv("mhmessages");
        unputenv("mhannotate");
-       unputenv("mhinplace");
 
        if (text && mp && !is_readonly(mp)) {
                found = 0;
@@ -87,8 +86,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);
                }
        }