From: Ian Wienand Date: Wed, 9 May 2012 04:13:29 +0000 (+0200) Subject: Fix daylight time change for the US X-Git-Tag: glibc-2.16-tps~443 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=b9f1922d7e7d67e8559664b266b2a6b35121d6af;p=thirdparty%2Fglibc.git Fix daylight time change for the US [BZ #14080] * time/tzset.c (__tzset_parse_tz): Update default rules for daylight time changes in the Energy Policy Act of 2005. --- diff --git a/ChangeLog b/ChangeLog index 3a1eb32fa46..81d17c9ab50 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,9 @@ +2012-05-08 Ian Wienand + + [BZ #14080] + * time/tzset.c (__tzset_parse_tz): Update default rules for + daylight time changes in the Energy Policy Act of 2005. + 2012-05-09 Andreas Jaeger [BZ #13983] diff --git a/NEWS b/NEWS index 18f63c5bfb9..ca1f7535cc4 100644 --- a/NEWS +++ b/NEWS @@ -24,7 +24,7 @@ Version 2.16 13895, 13908, 13910, 13911, 13912, 13913, 13914, 13915, 13916, 13917, 13918, 13919, 13920, 13921, 13922, 13923, 13924, 13926, 13927, 13928, 13938, 13941, 13942, 13963, 13967, 13970, 13973, 13979, 13983, 14027, - 14033, 14034, 14040, 14049, 14055, 14064 + 14033, 14034, 14040, 14049, 14055, 14064, 14080 * ISO C11 support: diff --git a/time/tzset.c b/time/tzset.c index a2d29721a3f..5704437d230 100644 --- a/time/tzset.c +++ b/time/tzset.c @@ -1,4 +1,4 @@ -/* Copyright (C) 1991-2002,2003,2004,2007,2009 Free Software Foundation, Inc. +/* Copyright (C) 1991-2012 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or @@ -333,18 +333,24 @@ __tzset_parse_tz (tz) } else if (*tz == '\0') { - /* United States Federal Law, the equivalent of "M4.1.0,M10.5.0". */ + /* Daylight time rules in the U.S. are defined in the + U.S. Code, Title 15, Chapter 6, Subchapter IX - Standard + Time. These dates were established by Congress in the + Energy Policy Act of 2005 [Pub. L. no. 109-58, 119 Stat 594 + (2005)]. + Below is the equivalent of "M3.2.0,M11.1.0" [/2 not needed + since 2:00AM is the default]. */ tzr->type = M; if (tzr == &tz_rules[0]) { - tzr->m = 4; - tzr->n = 1; + tzr->m = 3; + tzr->n = 2; tzr->d = 0; } else { - tzr->m = 10; - tzr->n = 5; + tzr->m = 11; + tzr->n = 1; tzr->d = 0; } }