Commit c7864ae5 authored by gabime's avatar gabime

throw exception if DYNAMIC_TIME_ZONE_INFORMATION fails under windows instead of returning -1

parent 7a813078
...@@ -165,7 +165,7 @@ inline bool file_exists(const std::string& filename) ...@@ -165,7 +165,7 @@ inline bool file_exists(const std::string& filename)
} }
//Return utc offset in minutes or -1 on failure //Return utc offset in minutes or throw spdlog_ex on failure
inline int utc_minutes_offset(const std::tm& tm = details::os::localtime()) inline int utc_minutes_offset(const std::tm& tm = details::os::localtime())
{ {
...@@ -178,7 +178,8 @@ inline int utc_minutes_offset(const std::tm& tm = details::os::localtime()) ...@@ -178,7 +178,8 @@ inline int utc_minutes_offset(const std::tm& tm = details::os::localtime())
auto rv = GetDynamicTimeZoneInformation(&tzinfo); auto rv = GetDynamicTimeZoneInformation(&tzinfo);
#endif #endif
if (rv == TIME_ZONE_ID_INVALID) if (rv == TIME_ZONE_ID_INVALID)
return -1; throw spdlog::spdlog_ex("Failed getting timezone info. Last error: " + GetLastError());
int offset = -tzinfo.Bias; int offset = -tzinfo.Bias;
if (tm.tm_isdst) if (tm.tm_isdst)
offset -= tzinfo.DaylightBias; offset -= tzinfo.DaylightBias;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment