cvs: ZendEngine2(PHP_5_3) / zend_API.c /tests bug47880.phpt php-src NEWS
[email protected] ("Dmitry Stogov") Mon, 06 Apr 2009 11:10:32 -0000
| Newsgroups | php.zend-engine.cvs |
|---|---|
| Message-ID | <cvsdmitry1239016232@cvsserver> |
dmitry Mon Apr 6 11:10:32 2009 UTC
Added files: (Branch: PHP_5_3)
/ZendEngine2/tests bug47880.phpt
Modified files:
/php-src NEWS
/ZendEngine2 zend_API.c
Log:
Bug #47880 (crashes in call_user_func_array())
http://cvs.php.net/viewvc.cgi/php-src/NEWS?r1=1.2027.2.547.2.965.2.552&r2=1.2027.2.547.2.965.2.553&diff_format=u
Index: php-src/NEWS
diff -u php-src/NEWS:1.2027.2.547.2.965.2.552 php-src/NEWS:1.2027.2.547.2.965.2.553
--- php-src/NEWS:1.2027.2.547.2.965.2.552 Sat Apr 4 14:36:23 2009
+++ php-src/NEWS Mon Apr 6 11:10:31 2009
@@ -4,6 +4,7 @@
- Undeprecated ticks. (Arnaud)
- Upgraded bundled sqlite to version 3.6.12. (Scott)
+- Fixed bug #47880 (crashes in call_user_func_array()). (Dmitry)
- Fixed bug #47856 (stristr() converts needle to lower-case). (Ilia)
- Fixed bug #47851 (is_callable throws fatal error). (Dmitry)
- Fixed bug #47819 (Getting pdo_mysql.so: undefined symbol: mysqlnd_debug_init
http://cvs.php.net/viewvc.cgi/ZendEngine2/zend_API.c?r1=1.296.2.27.2.34.2.62&r2=1.296.2.27.2.34.2.63&diff_format=u
Index: ZendEngine2/zend_API.c
diff -u ZendEngine2/zend_API.c:1.296.2.27.2.34.2.62 ZendEngine2/zend_API.c:1.296.2.27.2.34.2.63
--- ZendEngine2/zend_API.c:1.296.2.27.2.34.2.62 Thu Apr 2 09:56:33 2009
+++ ZendEngine2/zend_API.c Mon Apr 6 11:10:31 2009
@@ -18,7 +18,7 @@
+----------------------------------------------------------------------+
*/
-/* $Id: zend_API.c,v 1.296.2.27.2.34.2.62 2009/04/02 09:56:33 dmitry Exp $ */
+/* $Id: zend_API.c,v 1.296.2.27.2.34.2.63 2009/04/06 11:10:31 dmitry Exp $ */
#include "zend.h"
#include "zend_execute.h"
@@ -2856,9 +2856,6 @@
ZEND_API void zend_fcall_info_args_clear(zend_fcall_info *fci, int free_mem) /* {{{ */
{
if (fci->params) {
- while (fci->param_count) {
- zval_ptr_dtor(fci->params[--fci->param_count]);
- }
if (free_mem) {
efree(fci->params);
fci->params = NULL;
@@ -2906,7 +2903,6 @@
zend_hash_internal_pointer_reset_ex(Z_ARRVAL_P(args), &pos);
while (zend_hash_get_current_data_ex(Z_ARRVAL_P(args), (void *) &arg, &pos) == SUCCESS) {
*params++ = arg;
- Z_ADDREF_P(*arg);
zend_hash_move_forward_ex(Z_ARRVAL_P(args), &pos);
}
@@ -2929,7 +2925,6 @@
fci->params = (zval ***) erealloc(fci->params, fci->param_count * sizeof(zval **));
for (i = 0; i < argc; ++i) {
- Z_ADDREF_P(*(argv[i]));
fci->params[i] = argv[i];
}
}
@@ -2955,7 +2950,6 @@
for (i = 0; i < argc; ++i) {
arg = va_arg(*argv, zval **);
- Z_ADDREF_P(*arg);
fci->params[i] = arg;
}
}
http://cvs.php.net/viewvc.cgi/ZendEngine2/tests/bug47880.phpt?view=markup&rev=1.1
Index: ZendEngine2/tests/bug47880.phpt
+++ ZendEngine2/tests/bug47880.phpt