X-Git-Url: https://diplodocus.org/git/nmh/blobdiff_plain/ca3ecae9a9c67c1f497fed2dd6a5bc13f1ba0796..e605596f06f250775f89ddfe3f7f2c8fcfda1c4e:/uip/prompter.c?ds=sidebyside diff --git a/uip/prompter.c b/uip/prompter.c index ec2ea3fb..878b2b43 100644 --- a/uip/prompter.c +++ b/uip/prompter.c @@ -47,7 +47,7 @@ static jmp_buf sigenv; /* * prototypes */ -int getln (char *, int); +static int getln (char *, int); static int chrcnv (char *); static void chrdsp (char *, char); static void intrser (int); @@ -64,7 +64,7 @@ main (int argc, char **argv) char **arguments, **argp; FILE *in, *out; char *tmpfil; - m_getfld_state_t gstate = 0; + m_getfld_state_t gstate; if (nmh_init(argv[0], 2)) { return 1; } @@ -182,9 +182,10 @@ main (int argc, char **argv) /* * Loop through the lines of the draft skeleton. */ + gstate = m_getfld_state_init(in); for (;;) { int fieldsz = sizeof field; - switch (state = m_getfld (&gstate, name, field, &fieldsz, in)) { + switch (state = m_getfld2(&gstate, name, field, &fieldsz)) { case FLD: case FLDPLUS: /* @@ -201,7 +202,7 @@ main (int argc, char **argv) fprintf (out, "%s:%s", name, field); while (state == FLDPLUS) { fieldsz = sizeof field; - state = m_getfld (&gstate, name, field, &fieldsz, in); + state = m_getfld2(&gstate, name, field, &fieldsz); fputs(field, stdout); fputs(field, out); } @@ -260,11 +261,10 @@ abort: fputs(field, stdout); } while (state == BODY && (fieldsz = sizeof field, - state = m_getfld (&gstate, name, field, &fieldsz, in))); + state = m_getfld2(&gstate, name, field, &fieldsz))); if (prepend || !body) break; - else - printf ("\n--------Enter additional text\n\n"); + printf ("\n--------Enter additional text\n\n"); } fflush (stdout); @@ -312,7 +312,7 @@ abort: } -int +static int getln (char *buffer, int n) { int c;