summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorStanislav Malyshev <stas@php.net>2011-01-30 10:18:12 +0000
committerStanislav Malyshev <stas@php.net>2011-01-30 10:18:12 +0000
commit71f3d3793de0a52ec55579bec75634bb8407f32b (patch)
treeddeb7ab9bc09ef61ca98fa27b07cbab432559c49
parent7eca674e59a16ef9430f135958bc5eaeaa1aa5c0 (diff)
downloadphp-git-71f3d3793de0a52ec55579bec75634bb8407f32b.tar.gz
Fix bug #52290 (setDate, setISODate, setTime works wrong when DateTime created from timestamp)
-rw-r--r--NEWS2
-rw-r--r--ext/date/php_date.c1
-rw-r--r--ext/date/tests/bug52290.phpt4
3 files changed, 5 insertions, 2 deletions
diff --git a/NEWS b/NEWS
index b794b267a8..7a52ee4e75 100644
--- a/NEWS
+++ b/NEWS
@@ -41,6 +41,8 @@
. Fixed bug #52808 (Segfault when specifying interval as two dates). (Stas)
. Fixed bug #52738 (Can't use new properties in class extended from
DateInterval). (Stas)
+ . Fixed bug #52290 (setDate, setISODate, setTime works wrong when DateTime
+ created from timestamp). (Stas)
. Fixed bug #52063 (DateTime constructor's second argument doesn't have a
null default value). (Gustavo, Stas)
diff --git a/ext/date/php_date.c b/ext/date/php_date.c
index 7fde443a71..73a61c7e94 100644
--- a/ext/date/php_date.c
+++ b/ext/date/php_date.c
@@ -3090,6 +3090,7 @@ PHP_FUNCTION(date_isodate_set)
dateobj->time->y = y;
dateobj->time->m = 1;
dateobj->time->d = 1;
+ memset(&dateobj->time->relative, 0, sizeof(dateobj->time->relative));
dateobj->time->relative.d = timelib_daynr_from_weeknr(y, w, d);
dateobj->time->have_relative = 1;
diff --git a/ext/date/tests/bug52290.phpt b/ext/date/tests/bug52290.phpt
index c1ee9d47af..78ede1387c 100644
--- a/ext/date/tests/bug52290.phpt
+++ b/ext/date/tests/bug52290.phpt
@@ -23,5 +23,5 @@ var_dump($dt->format('o-\WW-N | Y-m-d | H:i:s | U'));
--EXPECTF--
string(47) "2005-W52-7 | 2006-01-01 | 00:00:00 | 1136073600"
string(47) "2005-W52-1 | 2005-12-26 | 00:00:00 | 1135555200"
-string(47) "2007-W40-5 | 2007-10-10 | 00:00:00 | 1191974400"
-string(47) "2007-W40-5 | 2007-10-10 | 20:30:40 | 1192048240" \ No newline at end of file
+string(47) "2007-W41-3 | 2007-10-10 | 00:00:00 | 1191974400"
+string(47) "2007-W41-3 | 2007-10-10 | 20:30:40 | 1192048240" \ No newline at end of file