From: Rasmus Lerdorf Date: Fri, 26 Mar 2004 19:32:49 +0000 (+0000) Subject: MFB: The 2am offset was a bad choice as this hour doesn't necessarily exist X-Git-Tag: php-5.0.0RC2RC1~220 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=a40518164b76bcd9352835ac373f85119036d30c;p=php MFB: The 2am offset was a bad choice as this hour doesn't necessarily exist on a DST switch. So use 4am instead. Fixes bug #27719 --- diff --git a/ext/standard/datetime.c b/ext/standard/datetime.c index 63f127d23b..fe973c8042 100644 --- a/ext/standard/datetime.c +++ b/ext/standard/datetime.c @@ -191,12 +191,12 @@ void php_mktime(INTERNAL_FUNCTION_PARAMETERS, int gm) val = (*arguments[0])->value.lval; /* We don't use 1 here to work around problems in some mktime implementations - when it comes to daylight savings time. Setting it to 2 and working back from + when it comes to daylight savings time. Setting it to 4 and working back from there with the chgsecs offset makes us immune to these problems. See http://bugs.php.net/27533 for more info. */ - if (val < 2) { - chgsecs += (2-val) * 60*60; val = 2; + if (val < 4) { + chgsecs += (4-val) * 60*60; val = 4; } ta->tm_hour = val; /* fall-through */