From 6722737ece4b8db3e30b53aef8f981f53db1621e Mon Sep 17 00:00:00 2001 From: Alexander Shishkin Date: Fri, 22 Oct 2010 13:27:16 +0200 Subject: *: introduce and use xmkstemp. -65 bytes. Signed-off-by: Alexander Shishkin Signed-off-by: Denys Vlasenko --- editors/diff.c | 5 ++--- editors/patch.c | 3 +-- editors/sed.c | 4 +--- 3 files changed, 4 insertions(+), 8 deletions(-) (limited to 'editors') diff --git a/editors/diff.c b/editors/diff.c index 83de52753..d9d709db6 100644 --- a/editors/diff.c +++ b/editors/diff.c @@ -685,9 +685,8 @@ static int diffreg(char *file[2]) */ if (lseek(fd, 0, SEEK_SET) == -1 && errno == ESPIPE) { char name[] = "/tmp/difXXXXXX"; - int fd_tmp = mkstemp(name); - if (fd_tmp < 0) - bb_perror_msg_and_die("mkstemp"); + int fd_tmp = xmkstemp(name); + unlink(name); if (bb_copyfd_eof(fd, fd_tmp) < 0) xfunc_die(); diff --git a/editors/patch.c b/editors/patch.c index fff06907f..33ff8b569 100644 --- a/editors/patch.c +++ b/editors/patch.c @@ -200,8 +200,7 @@ int copy_tempfile(int fdin, char *name, char **tempname) int fd; *tempname = xasprintf("%sXXXXXX", name); - fd = mkstemp(*tempname); - if(-1 == fd) bb_perror_msg_and_die("no temp file"); + fd = xmkstemp(*tempname); // Set permissions of output file fstat(fdin, &statbuf); diff --git a/editors/sed.c b/editors/sed.c index 8d9f7b25b..964d0405e 100644 --- a/editors/sed.c +++ b/editors/sed.c @@ -1370,9 +1370,7 @@ int sed_main(int argc UNUSED_PARAM, char **argv) } G.outname = xasprintf("%sXXXXXX", argv[i]); - nonstdoutfd = mkstemp(G.outname); - if (-1 == nonstdoutfd) - bb_perror_msg_and_die("can't create temp file %s", G.outname); + nonstdoutfd = xmkstemp(G.outname); G.nonstdout = xfdopen_for_write(nonstdoutfd); /* Set permissions/owner of output file */ -- cgit v1.2.3