From b6d635bc28bf7d94201bcd167905cebc48abf7cb Mon Sep 17 00:00:00 2001 From: Joey Hess Date: Fri, 11 Apr 2008 19:03:50 -0400 Subject: [PATCH] minor changes --- sponge.c | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/sponge.c b/sponge.c index f17bf86..0dd676a 100644 --- a/sponge.c +++ b/sponge.c @@ -223,7 +223,9 @@ FILE *open_tmpfile(void) { mode_t mask; char *tmpdir; char const * const template="%s/sponge.XXXXXX"; - + + trapsignals(); + cs = cs_enter(); tmpdir = getenv("TMPDIR"); if (tmpdir == NULL) tmpdir = "/tmp"; @@ -234,14 +236,12 @@ FILE *open_tmpfile(void) { exit(1); } sprintf(tmpname, template, tmpdir); - - trapsignals(); - cs = cs_enter(); mask=umask(077); tmpfd = mkstemp(tmpname); umask(mask); atexit(onexit_cleanup); // solaris on_exit(onexit_cleanup, 0); cs_leave(cs); + if (tmpfd < 0) { perror("mkstemp failed"); exit(1); @@ -340,7 +340,6 @@ int main (int argc, char **argv) { } } else { - outfile = stdout; if (outname) { outfile = fopen(outname, "w"); if (!outfile) { @@ -348,6 +347,9 @@ int main (int argc, char **argv) { exit(1); } } + else { + outfile = stdout; + } if (bufused) write_buff_out(bufstart, bufused, outfile); fclose(outfile); -- 2.39.5