X-Git-Url: http://git.marmaro.de/?a=blobdiff_plain;f=uip%2Fprompter.c;h=6f97a8806a2a01a6fa2860285d02457add14375d;hb=3bf07d227725f798f654ac09f015f35d27ab83cb;hp=79e0eb790b7f5541bcdb362606fc551488197309;hpb=017a82124bf2ea39ced5aa4c8f969c18b3c2fb90;p=mmh diff --git a/uip/prompter.c b/uip/prompter.c index 79e0eb7..6f97a88 100644 --- a/uip/prompter.c +++ b/uip/prompter.c @@ -3,6 +3,10 @@ * 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 +64,6 @@ static struct swit switches[] = { { NULL, 0 } }; -extern int errno; #ifdef HAVE_TERMIOS_H static struct termios tio; @@ -105,6 +108,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 +186,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 +401,8 @@ no_body: unlink (tmpfil); context_save (); /* save the context file */ - return done (0); + done (0); + return 1; }