diff --git a/ext/standard/datetime.c b/ext/standard/datetime.c index 63f127d23b0..fe973c80422 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 */