From: Paul Eggert Date: Sat, 5 Oct 2024 02:01:30 +0000 (-0700) Subject: mktime: fix timegm bug that set tmp->tm_isdst X-Git-Url: https://gitweb.git.savannah.gnu.org/gitweb/?a=commitdiff_plain;h=64a179b28743a0c87f71fe15162cad6ab5d6ca9c;p=gnulib.git mktime: fix timegm bug that set tmp->tm_isdst * lib/timegm.c (__timegm64): Omit now-unnecessary initialization of tm_isdst. Anyway, the initialization was always wrong, since timegm should not modify *TMP when it fails. --- diff --git a/ChangeLog b/ChangeLog index 6d8a1a52b3..cea31f84e6 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,5 +1,10 @@ 2024-10-04 Paul Eggert + mktime: fix timegm bug that set tmp->tm_isdst + * lib/timegm.c (__timegm64): Omit now-unnecessary initialization + of tm_isdst. Anyway, the initialization was always wrong, since + timegm should not modify *TMP when it fails. + mktime: refactor to get closer to glibc * lib/mktime.c (convert_time): Reorder args. (__tz_convert): New macro. All convert_time callers changed to use it. diff --git a/lib/timegm.c b/lib/timegm.c index 1f1f66c61b..ba28b3ecd9 100644 --- a/lib/timegm.c +++ b/lib/timegm.c @@ -30,7 +30,6 @@ __time64_t __timegm64 (struct tm *tmp) { static mktime_offset_t gmtime_offset; - tmp->tm_isdst = 0; return __mktime_internal (tmp, false, &gmtime_offset); }