diff --git a/repertory/librepertory/src/providers/s3/s3_provider.cpp b/repertory/librepertory/src/providers/s3/s3_provider.cpp index 3e796662..18c4b4c8 100644 --- a/repertory/librepertory/src/providers/s3/s3_provider.cpp +++ b/repertory/librepertory/src/providers/s3/s3_provider.cpp @@ -73,17 +73,11 @@ auto s3_provider::convert_api_date(std::string_view date) -> std::uint64_t { struct tm tm1 {}; #if defined(_WIN32) utils::time::strptime(date_time.c_str(), "%Y-%m-%dT%T", &tm1); - - auto utc_time = _mkgmtime(&tm1); - localtime_s(&tm1, &utc_time); - return nanos + utils::time::windows_time_t_to_unix_time(mktime(&tm1)); + return nanos + utils::time::windows_time_t_to_unix_time(_mkgmtime(&tm1)); #else // !defined(_WIN32) strptime(date_time.c_str(), "%Y-%m-%dT%T", &tm1); - - auto utc_time = timegm(&tm1); - return nanos + - (static_cast(mktime(localtime_r(&utc_time, &tm1))) * - utils::time::NANOS_PER_SECOND); + return nanos + (static_cast(timegm(&tm1)) * + utils::time::NANOS_PER_SECOND); #endif // defined(_WIN32) }