mirror of
https://github.com/git/git.git
synced 2025-12-12 20:36:24 +01:00
wrapper: simplify xmkstemp()
Call xmkstemp_mode() instead of duplicating its error handling code. This switches the implementation from the system's mkstemp(3) to our own git_mkstemp_mode(), which works just as well. Signed-off-by: René Scharfe <l.s.r@web.de> Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
committed by
Junio C Hamano
parent
f368df439b
commit
f18aa68861
19
wrapper.c
19
wrapper.c
@@ -421,24 +421,7 @@ FILE *fopen_or_warn(const char *path, const char *mode)
|
||||
|
||||
int xmkstemp(char *filename_template)
|
||||
{
|
||||
int fd;
|
||||
char origtemplate[PATH_MAX];
|
||||
strlcpy(origtemplate, filename_template, sizeof(origtemplate));
|
||||
|
||||
fd = mkstemp(filename_template);
|
||||
if (fd < 0) {
|
||||
int saved_errno = errno;
|
||||
const char *nonrelative_template;
|
||||
|
||||
if (strlen(filename_template) != strlen(origtemplate))
|
||||
filename_template = origtemplate;
|
||||
|
||||
nonrelative_template = absolute_path(filename_template);
|
||||
errno = saved_errno;
|
||||
die_errno("Unable to create temporary file '%s'",
|
||||
nonrelative_template);
|
||||
}
|
||||
return fd;
|
||||
return xmkstemp_mode(filename_template, 0600);
|
||||
}
|
||||
|
||||
/* Adapted from libiberty's mkstemp.c. */
|
||||
|
||||
Reference in New Issue
Block a user