summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChristoph M. Becker <cmb@php.net>2015-08-14 14:19:12 +0200
committerChristoph M. Becker <cmb@php.net>2015-08-14 14:19:12 +0200
commite66bf11638409b9582d5b9159b97e8b108c29796 (patch)
treec25a1af3547a517337d8cbf9492f0eb019303650
parentcd18ba117cd3d32b760aa7e16a78947aa91e254a (diff)
downloadphp-git-e66bf11638409b9582d5b9159b97e8b108c29796.tar.gz
Fix #70266 (DateInterval::__construct.interval_spec is not supposed to be optional)
The required_num_args argument of ZEND_BEGIN_ARG_INFO_EX() has to be 1.
-rw-r--r--ext/date/php_date.c2
-rw-r--r--ext/date/tests/bug70266.phpt8
2 files changed, 9 insertions, 1 deletions
diff --git a/ext/date/php_date.c b/ext/date/php_date.c
index 2e3b3fdf11..4ed439c4f5 100644
--- a/ext/date/php_date.c
+++ b/ext/date/php_date.c
@@ -383,7 +383,7 @@ ZEND_BEGIN_ARG_INFO_EX(arginfo_date_period_construct, 0, 0, 3)
ZEND_ARG_INFO(0, end)
ZEND_END_ARG_INFO()
-ZEND_BEGIN_ARG_INFO_EX(arginfo_date_interval_construct, 0, 0, 0)
+ZEND_BEGIN_ARG_INFO_EX(arginfo_date_interval_construct, 0, 0, 1)
ZEND_ARG_INFO(0, interval_spec)
ZEND_END_ARG_INFO()
/* }}} */
diff --git a/ext/date/tests/bug70266.phpt b/ext/date/tests/bug70266.phpt
new file mode 100644
index 0000000000..5eeebabab8
--- /dev/null
+++ b/ext/date/tests/bug70266.phpt
@@ -0,0 +1,8 @@
+--TEST--
+Bug #70266 (DateInterval::__construct.interval_spec is not supposed to be optional)
+--FILE--
+<?php
+var_dump((new ReflectionParameter(['DateInterval', '__construct'], 0))->isOptional());
+?>
+--EXPECT--
+bool(false)