X-Git-Url: http://git.marmaro.de/?p=mmh;a=blobdiff_plain;f=uip%2Fwhatnow.c;h=3d97716c1646aa5cab803f3108c0d616e0afeb46;hp=5b59c86caa23ad74ac56f9a3c9502ea5feb05ef3;hb=f33f12af33361e5d688cd1700c1ee03af5988fd9;hpb=c8195849d2e366c569271abb0f5f60f4ebf0b4d0 diff --git a/uip/whatnow.c b/uip/whatnow.c index 5b59c86..3d97716 100644 --- a/uip/whatnow.c +++ b/uip/whatnow.c @@ -66,9 +66,9 @@ static struct swit aleqs[] = { #define REFILEOPT 1 { "refile [] +folder", 0 }, #define DISPSW 2 - { "display []", 0 }, + { "display", 0 }, #define LISTSW 3 - { "list []", 0 }, + { "list", 0 }, #define SENDSW 4 { "send []", 0 }, #define PUSHSW 5 @@ -218,10 +218,13 @@ main(int argc, char **argv) switch (smatch(*argp, aleqs)) { case DISPSW: /* display the msg being replied to or distributed */ - if (msgnam) - showfile(++argp, msgnam); - else + if (msgnam) { + snprintf(buf, sizeof buf, "%s '%s'", + listproc, msgnam); + system(buf); + } else { advise(NULL, "no alternate message to display"); + } break; case EDITSW: @@ -235,7 +238,8 @@ main(int argc, char **argv) case LISTSW: /* display the draft file */ - showfile(++argp, drft); + snprintf(buf, sizeof buf, "%s '%s'", listproc, drft); + system(buf); break; case QUITSW: @@ -384,13 +388,13 @@ main(int argc, char **argv) if (*shell == '/') annotate(drft, attach_hdr, shell, 0, - -2, 1); + -2, 1, 0); else { sprintf(file, "%s/%s", cwd, shell); annotate(drft, attach_hdr, file, 0, - -2, 1); + -2, 1, 0); } } @@ -438,7 +442,7 @@ main(int argc, char **argv) n = atoi(*arguments); annotate(drft, attach_hdr, NULL, 0, - n, 1); + n, 1, 0); for (argp = arguments + 1; *argp != NULL; argp++) { if (atoi(*argp) > n) { @@ -470,7 +474,7 @@ main(int argc, char **argv) != NULL) { *(strchr(shell, '\n')) = '\0'; annotate(drft, attach_hdr, shell, - 0, 0, 1); + 0, 0, 1, 0); } pclose(f); } else { @@ -618,10 +622,9 @@ editfile(char **ed, char **arg, char *file, int use, struct msgs *mp, if ((cp = context_find(cp)) != NULL) *ed = cp; } - } else { + } else if (!*ed) { /* set initial editor */ - if (*ed == NULL && (*ed = context_find("editor")) == NULL) - *ed = defaulteditor; + *ed = defaulteditor; } if (altmsg) { @@ -766,15 +769,13 @@ static int sendfile(char **arg, char *file, int pushsw) { pid_t child_id; - int i, vecp; + int vecp; char *vec[MAXARGS]; context_save(); /* save the context file */ fflush(stdout); - for (i = 0; (child_id = fork()) == NOTOK && i < 5; i++) - sleep(5); - switch (child_id) { + switch (child_id = fork()) { case NOTOK: advise(NULL, "unable to fork, so sending directly..."); /* fall */