com php-src: Fix Bug #74541 Wrong reflection on session_start (): ext/session/session.c ext/session/tests/bug7 4541.phpt

[email protected] (Xinchen Hui)
Newsgroups php.cvs
Message-ID <[email protected]>
Commit:    b39c70b4a7101c2939c49826e1bbd89ae79931f3
Author:    Fabien Villepinte <[email protected]>         Mon, 8 May 2017 22:42:09 +0200
Parents:   1a06fae5438e9efa6a165d4f3028c6817ced3a4f
Branches:  PHP-7.0 PHP-7.1 master

Link:       http://git.php.net/?p=php-src.git;a=commitdiff;h=b39c70b4a7101c2939c49826e1bbd89ae79931f3

Log:
Fix Bug #74541 Wrong reflection on session_start()

Bugs:
https://bugs.php.net/74541

Changed paths:
  M  ext/session/session.c
  A  ext/session/tests/bug74541.phpt


Diff:
diff --git a/ext/session/session.c b/ext/session/session.c
index 589d9b2..2c4b30f 100644
--- a/ext/session/session.c
+++ b/ext/session/session.c
@@ -2554,6 +2554,10 @@ ZEND_BEGIN_ARG_INFO(arginfo_session_class_updateTimestamp, 0)
 	ZEND_ARG_INFO(0, key)
 	ZEND_ARG_INFO(0, val)
 ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_INFO_EX(arginfo_session_start, 0, 0, 0)
+	ZEND_ARG_INFO(0, options) /* array */
+ZEND_END_ARG_INFO()
 /* }}} */
 
 /* {{{ session_functions[]
@@ -2566,7 +2570,7 @@ static const zend_function_entry session_functions[] = {
 	PHP_FE(session_regenerate_id,     arginfo_session_regenerate_id)
 	PHP_FE(session_decode,            arginfo_session_decode)
 	PHP_FE(session_encode,            arginfo_session_void)
-	PHP_FE(session_start,             arginfo_session_void)
+	PHP_FE(session_start,             arginfo_session_start)
 	PHP_FE(session_destroy,           arginfo_session_void)
 	PHP_FE(session_unset,             arginfo_session_void)
 	PHP_FE(session_set_save_handler,  arginfo_session_set_save_handler)
diff --git a/ext/session/tests/bug74541.phpt b/ext/session/tests/bug74541.phpt
new file mode 100644
index 0000000..8c70ebe
--- /dev/null
+++ b/ext/session/tests/bug74541.phpt
@@ -0,0 +1,18 @@
+--TEST--
+Bug #74541 Wrong reflection on session_start()
+--SKIPIF--
+<?php
+include('skipif.inc');
+if (!extension_loaded('reflection')) die("skip");
+?>
+--FILE--
+<?php
+$r = new ReflectionFunction('session_start');
+var_dump($r->getNumberOfParameters());
+var_dump($r->getNumberOfRequiredParameters());
+?>
+===DONE===
+--EXPECT--
+int(1)
+int(0)
+===DONE===
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.