From a6c0a4e4746084df2828ea5875cf52ad9ae674f0 Mon Sep 17 00:00:00 2001 From: Stanislav Malyshev Date: Mon, 24 Jan 2011 01:15:41 +0000 Subject: [PATCH] Fixed Bug #52063 (DateTime constructor's second argument doesn't have a null default value) --- ext/date/php_date.c | 4 ++-- ext/date/tests/bug52063.phpt | 15 +++++++++++++++ 2 files changed, 17 insertions(+), 2 deletions(-) create mode 100644 ext/date/tests/bug52063.phpt diff --git a/ext/date/php_date.c b/ext/date/php_date.c index 75d2de186b..4cd62131bc 100644 --- a/ext/date/php_date.c +++ b/ext/date/php_date.c @@ -2460,7 +2460,7 @@ PHP_FUNCTION(date_create) char *time_str = NULL; int time_str_len = 0; - if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "|sO", &time_str, &time_str_len, &timezone_object, date_ce_timezone) == FAILURE) { + if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "|sO!", &time_str, &time_str_len, &timezone_object, date_ce_timezone) == FAILURE) { RETURN_FALSE; } @@ -2502,7 +2502,7 @@ PHP_METHOD(DateTime, __construct) zend_error_handling error_handling; zend_replace_error_handling(EH_THROW, NULL, &error_handling TSRMLS_CC); - if (SUCCESS == zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "|sO", &time_str, &time_str_len, &timezone_object, date_ce_timezone)) { + if (SUCCESS == zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "|sO!", &time_str, &time_str_len, &timezone_object, date_ce_timezone)) { php_date_initialize(zend_object_store_get_object(getThis() TSRMLS_CC), time_str, time_str_len, NULL, timezone_object, 1 TSRMLS_CC); } zend_restore_error_handling(&error_handling TSRMLS_CC); diff --git a/ext/date/tests/bug52063.phpt b/ext/date/tests/bug52063.phpt new file mode 100644 index 0000000000..af9da9e429 --- /dev/null +++ b/ext/date/tests/bug52063.phpt @@ -0,0 +1,15 @@ +--TEST-- +Bug #52063 (DateTime constructor's second argument doesn't have a null default value) +--FILE-- +format(DateTime::COOKIE); +echo "\n"; +$a = date_create("2009-01-01", null); +echo $a->format(DateTime::COOKIE); +echo "\n"; +?> +--EXPECTF-- +Thursday, 01-Jan-09 00:00:00 WET +Thursday, 01-Jan-09 00:00:00 WET -- 2.40.0