X-Git-Url: https://diplodocus.org/git/nmh/blobdiff_plain/017a82124bf2ea39ced5aa4c8f969c18b3c2fb90..0ce746a6f402fd4a6a4bbdedd5ae65993ef56c38:/uip/prompter.c diff --git a/uip/prompter.c b/uip/prompter.c index 79e0eb79..7c28aece 100644 --- a/uip/prompter.c +++ b/uip/prompter.c @@ -2,7 +2,9 @@ /* * prompter.c -- simple prompting editor front-end * - * $Id$ + * This code is Copyright (c) 2002, by the authors of nmh. See the + * COPYRIGHT file in the root directory of the nmh distribution for + * complete copyright information. */ #include @@ -60,7 +62,6 @@ static struct swit switches[] = { { NULL, 0 } }; -extern int errno; #ifdef HAVE_TERMIOS_H static struct termios tio; @@ -105,6 +106,7 @@ main (int argc, char **argv) char buffer[BUFSIZ], tmpfil[BUFSIZ]; char **arguments, **argp; FILE *in, *out; + char *tfile = NULL; #ifdef LOCALE setlocale(LC_ALL, ""); @@ -182,10 +184,10 @@ main (int argc, char **argv) if ((in = fopen (drft, "r")) == NULL) adios (drft, "unable to open"); - strncpy (tmpfil, m_tmpfil (invo_name), sizeof(tmpfil)); - if ((out = fopen (tmpfil, "w")) == NULL) - adios (tmpfil, "unable to create"); + tfile = m_mktemp2(NULL, invo_name, NULL, &out); + if (tfile == NULL) adios("prompter", "unable to create temporary file"); chmod (tmpfil, 0600); + strncpy (tmpfil, tfile, sizeof(tmpfil)); /* * Are we changing the kill or erase character? @@ -397,7 +399,8 @@ no_body: unlink (tmpfil); context_save (); /* save the context file */ - return done (0); + done (0); + return 1; }