From: "Luiz Fernando N. Capitulino" <lcapitulino@mandriva.com.br>
To: Junio C Hamano <gitster@pobox.com>
Cc: git@vger.kernel.org
Subject: [PATCH 2/2] Use xmkstemp() instead of mkstemp()
Date: Tue, 14 Aug 2007 16:45:58 -0300 [thread overview]
Message-ID: <20070814164558.1a627475@localhost> (raw)
xmkstemp() performs error checking and prints a standard error message when
an error occur.
Signed-off-by: Luiz Fernando N. Capitulino <lcapitulino@mandriva.com.br>
---
builtin-pack-objects.c | 4 +---
fast-import.c | 8 ++------
index-pack.c | 2 +-
merge-recursive.c | 4 +---
pack-write.c | 2 +-
unpack-file.c | 4 +---
6 files changed, 7 insertions(+), 17 deletions(-)
diff --git a/builtin-pack-objects.c b/builtin-pack-objects.c
index 5e9d1fd..51a850e 100644
--- a/builtin-pack-objects.c
+++ b/builtin-pack-objects.c
@@ -586,7 +586,7 @@ static off_t write_one(struct sha1file *f,
static int open_object_dir_tmp(const char *path)
{
snprintf(tmpname, sizeof(tmpname), "%s/%s", get_object_directory(), path);
- return mkstemp(tmpname);
+ return xmkstemp(tmpname);
}
/* forward declaration for write_pack_file */
@@ -612,8 +612,6 @@ static void write_pack_file(void)
f = sha1fd(1, "<stdout>");
} else {
int fd = open_object_dir_tmp("tmp_pack_XXXXXX");
- if (fd < 0)
- die("unable to create %s: %s\n", tmpname, strerror(errno));
pack_tmp_name = xstrdup(tmpname);
f = sha1fd(fd, pack_tmp_name);
}
diff --git a/fast-import.c b/fast-import.c
index 99a19d8..170cccd 100644
--- a/fast-import.c
+++ b/fast-import.c
@@ -663,9 +663,7 @@ static void start_packfile(void)
snprintf(tmpfile, sizeof(tmpfile),
"%s/tmp_pack_XXXXXX", get_object_directory());
- pack_fd = mkstemp(tmpfile);
- if (pack_fd < 0)
- die("Can't create %s: %s", tmpfile, strerror(errno));
+ pack_fd = xmkstemp(tmpfile);
p = xcalloc(1, sizeof(*p) + strlen(tmpfile) + 2);
strcpy(p->pack_name, tmpfile);
p->pack_fd = pack_fd;
@@ -727,9 +725,7 @@ static char *create_index(void)
snprintf(tmpfile, sizeof(tmpfile),
"%s/tmp_idx_XXXXXX", get_object_directory());
- idx_fd = mkstemp(tmpfile);
- if (idx_fd < 0)
- die("Can't create %s: %s", tmpfile, strerror(errno));
+ idx_fd = xmkstemp(tmpfile);
f = sha1fd(idx_fd, tmpfile);
sha1write(f, array, 256 * sizeof(int));
SHA1_Init(&ctx);
diff --git a/index-pack.c b/index-pack.c
index 8403c36..db58e05 100644
--- a/index-pack.c
+++ b/index-pack.c
@@ -114,7 +114,7 @@ static const char *open_pack_file(const char *pack_name)
static char tmpfile[PATH_MAX];
snprintf(tmpfile, sizeof(tmpfile),
"%s/tmp_pack_XXXXXX", get_object_directory());
- output_fd = mkstemp(tmpfile);
+ output_fd = xmkstemp(tmpfile);
pack_name = xstrdup(tmpfile);
} else
output_fd = open(pack_name, O_CREAT|O_EXCL|O_RDWR, 0600);
diff --git a/merge-recursive.c b/merge-recursive.c
index f7d1b84..ca77cdb 100644
--- a/merge-recursive.c
+++ b/merge-recursive.c
@@ -777,9 +777,7 @@ static void create_temp(mmfile_t *src, char *path)
int fd;
strcpy(path, ".merge_file_XXXXXX");
- fd = mkstemp(path);
- if (fd < 0)
- die("unable to create temp-file");
+ fd = xmkstemp(path);
if (write_in_full(fd, src->ptr, src->size) != src->size)
die("unable to write temp-file");
close(fd);
diff --git a/pack-write.c b/pack-write.c
index 1cf5f7c..e59b197 100644
--- a/pack-write.c
+++ b/pack-write.c
@@ -45,7 +45,7 @@ const char *write_idx_file(const char *index_name, struct pack_idx_entry **objec
static char tmpfile[PATH_MAX];
snprintf(tmpfile, sizeof(tmpfile),
"%s/tmp_idx_XXXXXX", get_object_directory());
- fd = mkstemp(tmpfile);
+ fd = xmkstemp(tmpfile);
index_name = xstrdup(tmpfile);
} else {
unlink(index_name);
diff --git a/unpack-file.c b/unpack-file.c
index 25c56b3..65c66eb 100644
--- a/unpack-file.c
+++ b/unpack-file.c
@@ -14,9 +14,7 @@ static char *create_temp_file(unsigned char *sha1)
die("unable to read blob object %s", sha1_to_hex(sha1));
strcpy(path, ".merge_file_XXXXXX");
- fd = mkstemp(path);
- if (fd < 0)
- die("unable to create temp-file");
+ fd = xmkstemp(path);
if (write_in_full(fd, buf, size) != size)
die("unable to write temp-file");
close(fd);
--
1.5.3.GIT
--
Luiz Fernando N. Capitulino
reply other threads:[~2007-08-14 19:46 UTC|newest]
Thread overview: [no followups] expand[flat|nested] mbox.gz Atom feed
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20070814164558.1a627475@localhost \
--to=lcapitulino@mandriva.com.br \
--cc=git@vger.kernel.org \
--cc=gitster@pobox.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).