LibCore: Set tm_isdst to a negative value before invoking mktime

If it is default-initialized to 0, mktime will assume that DST is not in
effect for the specified time. Setting it to a negative value instructs
mktime to determine for itself whether DST is in effect.
This commit is contained in:
Timothy Flynn 2023-03-21 11:16:26 -04:00 committed by Linus Groh
commit 8a27180fb8
Notes: sideshowbarker 2024-07-17 06:51:40 +09:00

View file

@ -280,7 +280,9 @@ Optional<DateTime> DateTime::parse(StringView format, DeprecatedString const& st
{
unsigned format_pos = 0;
unsigned string_pos = 0;
struct tm tm = {};
tm.tm_isdst = -1;
auto parsing_failed = false;
auto tm_represents_utc_time = false;
@ -549,4 +551,5 @@ Optional<DateTime> DateTime::parse(StringView format, DeprecatedString const& st
return DateTime::from_timestamp(mktime(&tm));
}
}