mirror of
https://github.com/RGBCube/serenity
synced 2025-07-25 06:37:43 +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:
parent
7fceb909a5
commit
0dfb9714fe
1 changed files with 4 additions and 2 deletions
|
@ -106,7 +106,9 @@ String DateTime::to_string(StringView format) const
|
||||||
const int format_len = format.length();
|
const int format_len = format.length();
|
||||||
|
|
||||||
auto format_time_zone_offset = [&](bool with_separator) {
|
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;
|
auto offset_seconds = -timezone;
|
||||||
#else
|
#else
|
||||||
auto offset_seconds = 0;
|
auto offset_seconds = 0;
|
||||||
|
@ -251,7 +253,7 @@ String DateTime::to_string(StringView format) const
|
||||||
format_time_zone_offset(true);
|
format_time_zone_offset(true);
|
||||||
break;
|
break;
|
||||||
case 'Z':
|
case 'Z':
|
||||||
builder.append(tzname[0]);
|
builder.append(tzname[daylight]);
|
||||||
break;
|
break;
|
||||||
case '%':
|
case '%':
|
||||||
builder.append('%');
|
builder.append('%');
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue