1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-05-31 23:38:12 +00:00

LibCore: Use altzone for the current time zone offset during DST

Also use the daylight global to determine the current time zone name,
i.e. tzname[0] is standard time, tzname[1] is daylight savings time.

Note that altzone isn't required to be defined on all systems, so we
have to #ifdef to check if it exists in order for Lagom to build.
This commit is contained in:
Timothy Flynn 2022-03-13 08:52:07 -04:00 committed by Andreas Kling
parent 7fceb909a5
commit 0dfb9714fe

View file

@ -106,7 +106,9 @@ String DateTime::to_string(StringView format) const
const int format_len = format.length();
auto format_time_zone_offset = [&](bool with_separator) {
#ifndef __FreeBSD__
#if defined(__serenity__)
auto offset_seconds = daylight ? -altzone : -timezone;
#elif !defined(__FreeBSD__)
auto offset_seconds = -timezone;
#else
auto offset_seconds = 0;
@ -251,7 +253,7 @@ String DateTime::to_string(StringView format) const
format_time_zone_offset(true);
break;
case 'Z':
builder.append(tzname[0]);
builder.append(tzname[daylight]);
break;
case '%':
builder.append('%');