X-Git-Url: http://git.marmaro.de/?a=blobdiff_plain;f=uip%2Fmsh.c;h=f492a3703e3e440d2fba0bc0283ac07ba3ddba67;hb=e056446589e2fee53f823e0da1fb34076018c3dd;hp=df64de52fbe6361c267fbe9d43318c41eb99b632;hpb=008837e090c008e3afe7a9c8667070bafa091e62;p=mmh diff --git a/uip/msh.c b/uip/msh.c index df64de5..f492a37 100644 --- a/uip/msh.c +++ b/uip/msh.c @@ -351,7 +351,7 @@ main (int argc, char **argv) if (folder) adios (NULL, "only one folder at a time!"); else - folder = path (cp + 1, *cp == '+' ? TFOLDER : TSUBCWF); + folder = pluspath (cp); } else if (file) @@ -413,7 +413,8 @@ main (int argc, char **argv) m_reset (); - return done (0); + done (0); + return 1; } @@ -732,10 +733,10 @@ setup (char *file) #ifdef BPOP if (pmsh) { - strncpy (tmpfil, m_tmpfil (invo_name), sizeof(tmpfil)); - if ((fp = fopen (tmpfil, "w+")) == NULL) - padios (tmpfil, "unable to create"); - unlink (tmpfil); + char *tfile = m_mktemp2(NULL, invo_name, NULL, &fp); + if (tfile == NULL) padios("msh", "unable to create temporary file"); + unlink(tfile); + strncpy(tmpfil, tfile, sizeof(tmpfil)); } else #endif /* BPOP */ @@ -995,10 +996,10 @@ msh_ready (int msgnum, int full) if (Msgs[msgnum].m_top == 0) padios (NULL, "msh_ready (%d, %d) botch", msgnum, full); if (!full) { - strncpy (tmpfil, m_tmpfil (invo_name), sizeof(tmpfil)); - if ((yp = fopen (tmpfil, "w+")) == NULL) - padios (tmpfil, "unable to create"); - unlink (tmpfil); + char *tfile = m_mktemp2(NULL, invo_name, NULL, &yp); + if (tfile == NULL) padios("msh", "unable to create temporary file"); + unlink(tfile); + strncpy(tmpfil, tfile, sizeof(tmpfil)); if (pop_top (Msgs[msgnum].m_top, 4, pop_action) == NOTOK) padios (NULL, "%s", response); @@ -1162,7 +1163,7 @@ scanstring (char *arg) void readids (int id) { - register int cur, seqnum, i, msgnum; + register int cur, seqnum, i=0, msgnum; if (mp->curmsg == 0) seq_setcur (mp, mp->lowmsg); @@ -1225,7 +1226,7 @@ readid (int msgnum) case FLD: case FLDEOF: case FLDPLUS: - if (!strcasecmp (name, BBoard_ID)) { + if (!mh_strcasecmp (name, BBoard_ID)) { bp = getcpy (buf); while (state == FLDPLUS) { state = m_getfld (state, name, buf, sizeof(buf), zp); @@ -1474,7 +1475,7 @@ getargs (char *prompt, struct swit *sw, struct Cmd *cmdp) continue; if (buffer[0] == '?') { printf ("commands:\n"); - print_sw (ALL, sw, ""); + print_sw (ALL, sw, "", stdout); printf ("type CTRL-D or use ``quit'' to leave %s\n", invo_name); continue; @@ -1544,7 +1545,8 @@ static int parse (char *buffer, struct Cmd *cmdp) { int argp = 0; - char c, *cp, *pp; + unsigned char c, *cp; + char *pp; cmdp->line[0] = 0; pp = cmdp->args[argp++] = cmdp->line; @@ -1891,7 +1893,7 @@ static int pINI (void) { int i, vrsn; - char *bp; + unsigned char *bp; struct record rcs, *rc; rc = &rcs; @@ -2140,7 +2142,7 @@ pCMD (char *str, struct swit *sw, struct Cmd *cmdp) case OK: printf ("commands:\n"); - print_sw (ALL, sw, ""); + print_sw (ALL, sw, "", stdout); printf ("type ``quit'' to leave %s\n", invo_name); fflush (stdout); fflush (stderr);