7 #include "src/base/platform/platform-posix-time.h" 12 const char* PosixDefaultTimezoneCache::LocalTimezone(
double time) {
13 if (std::isnan(time))
return "";
14 time_t tv =
static_cast<time_t
>(std::floor(time / msPerSecond));
16 struct tm* t = localtime_r(&tv, &tm);
17 if (!t || !t->tm_zone)
return "";
21 double PosixDefaultTimezoneCache::LocalTimeOffset(
double time_ms,
bool is_utc) {
24 time_t tv = time(
nullptr);
26 struct tm* t = localtime_r(&tv, &tm);
28 return static_cast<double>(t->tm_gmtoff * msPerSecond -
29 (t->tm_isdst > 0 ? 3600 * msPerSecond : 0));