diff options
author | Rosen Penev <rosenp@gmail.com> | 2022-12-20 04:48:42 -0800 |
---|---|---|
committer | GitHub <noreply@github.com> | 2022-12-20 13:48:42 +0100 |
commit | 2d329073435d36065ce30bfd29428f6a45e41016 (patch) | |
tree | 66cf347dc278eb7a86ac02dfabb8858d8fd69538 /libarchive/archive_write_set_format_zip.c | |
parent | 3da2fb7ee2d929bc8f02bcf3d42def768667c939 (diff) | |
download | libarchive-2d329073435d36065ce30bfd29428f6a45e41016.tar.gz |
cleanup _localtime64_s (#1820)
Signed-off-by: Rosen Penev <rosenp@gmail.com>
Diffstat (limited to 'libarchive/archive_write_set_format_zip.c')
-rw-r--r-- | libarchive/archive_write_set_format_zip.c | 17 |
1 files changed, 3 insertions, 14 deletions
diff --git a/libarchive/archive_write_set_format_zip.c b/libarchive/archive_write_set_format_zip.c index 8c14a702..86fa4858 100644 --- a/libarchive/archive_write_set_format_zip.c +++ b/libarchive/archive_write_set_format_zip.c @@ -1385,22 +1385,11 @@ dos_time(const time_t unix_time) #if defined(HAVE_LOCALTIME_R) || defined(HAVE__LOCALTIME64_S) struct tm tmbuf; #endif -#if defined(HAVE__LOCALTIME64_S) - errno_t terr; - __time64_t tmptime; -#endif - /* This will not preserve time when creating/extracting the archive - * on two systems with different time zones. */ -#if defined(HAVE_LOCALTIME_R) +#if defined(HAVE__LOCALTIME64_S) + t = _localtime64_s(&tmbuf, &unix_time) ? NULL : &tmbuf; +#elif defined(HAVE_LOCALTIME_R) t = localtime_r(&unix_time, &tmbuf); -#elif defined(HAVE__LOCALTIME64_S) - tmptime = unix_time; - terr = _localtime64_s(&tmbuf, &tmptime); - if (terr) - t = NULL; - else - t = &tmbuf; #else t = localtime(&unix_time); #endif |