summaryrefslogtreecommitdiff
path: root/lib/tempname.c
diff options
context:
space:
mode:
authorPaul Eggert <eggert@cs.ucla.edu>2022-08-22 12:22:52 -0700
committerPaul Eggert <eggert@cs.ucla.edu>2022-08-22 13:10:40 -0700
commit8304617684ba7f71c36fcf49786d3b279dfbefc3 (patch)
treeaa4f43403dad2961f9f436a24da1eeb3db6957bd /lib/tempname.c
parenta3cae0c3400ff36d3ed6ded9ce5d74755ba28197 (diff)
downloadgnulib-8304617684ba7f71c36fcf49786d3b279dfbefc3.tar.gz
tempname: merge 64-bit time_t fix from glibc
This merges glibc commit 52a5fe70a2c77935afe807fb6e904e512ddd894e "Use 64 bit time_t stat internally". * lib/tempname.c (struct_stat64) [_LIBC]: Use struct __stat64_t64. (__lstat64_time64) [!_LIBC]: Rename from __lstat64. All uses changed. (direxists): Use __stat64_time64 instead of __stat64.
Diffstat (limited to 'lib/tempname.c')
-rw-r--r--lib/tempname.c8
1 files changed, 4 insertions, 4 deletions
diff --git a/lib/tempname.c b/lib/tempname.c
index 5adfe629a8..4f615b90b9 100644
--- a/lib/tempname.c
+++ b/lib/tempname.c
@@ -55,14 +55,14 @@
#include <time.h>
#if _LIBC
-# define struct_stat64 struct stat64
+# define struct_stat64 struct __stat64_t64
# define __secure_getenv __libc_secure_getenv
#else
# define struct_stat64 struct stat
# define __gen_tempname gen_tempname
# define __mkdir mkdir
# define __open open
-# define __lstat64(file, buf) lstat (file, buf)
+# define __lstat64_time64(file, buf) lstat (file, buf)
# define __stat64(file, buf) stat (file, buf)
# define __getrandom getrandom
# define __clock_gettime64 clock_gettime
@@ -105,7 +105,7 @@ static int
direxists (const char *dir)
{
struct_stat64 buf;
- return __stat64 (dir, &buf) == 0 && S_ISDIR (buf.st_mode);
+ return __stat64_time64 (dir, &buf) == 0 && S_ISDIR (buf.st_mode);
}
/* Path search algorithm, for tmpnam, tmpfile, etc. If DIR is
@@ -197,7 +197,7 @@ try_nocreate (char *tmpl, _GL_UNUSED void *flags)
{
struct_stat64 st;
- if (__lstat64 (tmpl, &st) == 0 || errno == EOVERFLOW)
+ if (__lstat64_time64 (tmpl, &st) == 0 || errno == EOVERFLOW)
__set_errno (EEXIST);
return errno == ENOENT ? 0 : -1;
}