dmitry Fri Jul 25 09:48:36 2008 UTC Modified files: /php-src/ext/pdo pdo_stmt.c /php-src/ext/reflection php_reflection.c Log: Fixed support for static methods http://cvs.php.net/viewvc.cgi/php-src/ext/pdo/pdo_stmt.c?r1=1.195&r2=1.196&diff_format=u Index: php-src/ext/pdo/pdo_stmt.c diff -u php-src/ext/pdo/pdo_stmt.c:1.195 php-src/ext/pdo/pdo_stmt.c:1.196 --- php-src/ext/pdo/pdo_stmt.c:1.195 Fri Jul 25 08:53:11 2008 +++ php-src/ext/pdo/pdo_stmt.c Fri Jul 25 09:48:36 2008 @@ -18,7 +18,7 @@ +----------------------------------------------------------------------+ */ -/* $Id: pdo_stmt.c,v 1.195 2008/07/25 08:53:11 dmitry Exp $ */ +/* $Id: pdo_stmt.c,v 1.196 2008/07/25 09:48:36 dmitry Exp $ */ /* The PDO Statement Handle Class */ @@ -850,7 +850,7 @@ fcc->initialized = 1; fcc->function_handler = function_handler; fcc->calling_scope = EG(scope); - fcc->called_scope = Z_OBJCE_PP(object); + fcc->called_scope = object ? Z_OBJCE_PP(object) : NULL; fcc->object_pp = object; return 1; http://cvs.php.net/viewvc.cgi/php-src/ext/reflection/php_reflection.c?r1=1.302&r2=1.303&diff_format=u Index: php-src/ext/reflection/php_reflection.c diff -u php-src/ext/reflection/php_reflection.c:1.302 php-src/ext/reflection/php_reflection.c:1.303 --- php-src/ext/reflection/php_reflection.c:1.302 Fri Jul 25 08:53:11 2008 +++ php-src/ext/reflection/php_reflection.c Fri Jul 25 09:48:36 2008 @@ -20,7 +20,7 @@ +----------------------------------------------------------------------+ */ -/* $Id: php_reflection.c,v 1.302 2008/07/25 08:53:11 dmitry Exp $ */ +/* $Id: php_reflection.c,v 1.303 2008/07/25 09:48:36 dmitry Exp $ */ #ifdef HAVE_CONFIG_H #include "config.h" @@ -2434,7 +2434,7 @@ */ if (mptr->common.fn_flags & ZEND_ACC_STATIC) { object_pp = NULL; - obj_ce = NULL; + obj_ce = mptr->common.scope; } else { if ((Z_TYPE_PP(params[0]) != IS_OBJECT)) { efree(params); @@ -2465,7 +2465,7 @@ fcc.initialized = 1; fcc.function_handler = mptr; fcc.calling_scope = obj_ce; - fcc.called_scope = Z_OBJCE_PP(object_pp); + fcc.called_scope = obj_ce; fcc.object_pp = object_pp; result = zend_call_function(&fci, &fcc TSRMLS_CC); @@ -2538,7 +2538,7 @@ */ if (mptr->common.fn_flags & ZEND_ACC_STATIC) { object = NULL; - obj_ce = NULL; + obj_ce = mptr->common.scope; } else { if (!object) { efree(params); @@ -2570,8 +2570,8 @@ fcc.initialized = 1; fcc.function_handler = mptr; fcc.calling_scope = obj_ce; - fcc.called_scope = Z_OBJCE_P(object); - fcc.object_pp = &object; + fcc.called_scope = obj_ce; + fcc.object_pp = object ? &object : NULL; result = zend_call_function(&fci, &fcc TSRMLS_CC); @@ -5259,7 +5259,7 @@ php_info_print_table_start(); php_info_print_table_header(2, "Reflection", "enabled"); - php_info_print_table_row(2, "Version", "$Id: php_reflection.c,v 1.302 2008/07/25 08:53:11 dmitry Exp $"); + php_info_print_table_row(2, "Version", "$Id: php_reflection.c,v 1.303 2008/07/25 09:48:36 dmitry Exp $"); php_info_print_table_end(); } /* }}} */
-- PHP CVS Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php