diff options
| author | Reeze Xia <reeze@php.net> | 2015-12-09 11:35:39 +0800 |
|---|---|---|
| committer | Reeze Xia <reeze@php.net> | 2015-12-09 11:40:47 +0800 |
| commit | 943b23dcf6666a708c2ad4470cad5db36d47683a (patch) | |
| tree | dec592fd1abd4cd3fcf577c28d0db1d7e89bbc83 | |
| parent | 0adbf6de774d9b1938a34b969c40ea2ac1982222 (diff) | |
| download | php-git-943b23dcf6666a708c2ad4470cad5db36d47683a.tar.gz | |
Fixed bug #71053 (Type Hint about DateTime::diff does not match with informed)
| -rw-r--r-- | NEWS | 4 | ||||
| -rw-r--r-- | ext/date/php_date.c | 4 | ||||
| -rw-r--r-- | ext/date/tests/bug71053.phpt | 13 |
3 files changed, 19 insertions, 2 deletions
@@ -2,6 +2,10 @@ PHP NEWS ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| ?? Jan 2016 PHP 7.0.2 +- Date: + . Fixed bug #71053 (Type Hint about DateTime::diff does not match with + informed). (Reeze Xia) + - Mbstring: . Fixed bug #71066 (mb_send_mail: Program terminated with signal SIGSEGV, Segmentation fault). (Laruence) diff --git a/ext/date/php_date.c b/ext/date/php_date.c index 50c48eb439..b3125a9a5a 100644 --- a/ext/date/php_date.c +++ b/ext/date/php_date.c @@ -3579,9 +3579,9 @@ PHP_FUNCTION(date_diff) zval *object1, *object2; php_date_obj *dateobj1, *dateobj2; php_interval_obj *interval; - zend_long absolute = 0; + zend_bool absolute = 0; - if (zend_parse_method_parameters(ZEND_NUM_ARGS(), getThis(), "OO|l", &object1, date_ce_interface, &object2, date_ce_interface, &absolute) == FAILURE) { + if (zend_parse_method_parameters(ZEND_NUM_ARGS(), getThis(), "OO|b", &object1, date_ce_interface, &object2, date_ce_interface, &absolute) == FAILURE) { RETURN_FALSE; } dateobj1 = Z_PHPDATE_P(object1); diff --git a/ext/date/tests/bug71053.phpt b/ext/date/tests/bug71053.phpt new file mode 100644 index 0000000000..2c86f9f289 --- /dev/null +++ b/ext/date/tests/bug71053.phpt @@ -0,0 +1,13 @@ +--TEST-- +Bug #71053 (Type Hint about DateTime::diff does not match with informed) +--FILE-- +<?php +declare(strict_types=1); + +$date1 = new \DateTime(); +$date2 = clone $date1; + +var_dump(count($date1->diff($date2 , true)) > 0); +?> +--EXPECT-- +bool(true) |
