dmitry          Thu Nov 27 19:01:27 2008 UTC

  Added files:                 (Branch: PHP_5_3)
    /ZendEngine2/tests  bug46409.phpt 

  Modified files:              
    /php-src    NEWS 
    /ZendEngine2        zend_API.c zend_API.h zend_closures.c 
                        zend_exceptions.c zend_execute_API.c zend_interfaces.c 
                        zend_object_handlers.c zend_object_handlers.h 
                        zend_vm_def.h zend_vm_execute.h 
    /php-src/ext/curl   interface.c 
    /php-src/ext/dom    xpath.c 
    /php-src/ext/mysql  php_mysql.c 
    /php-src/ext/mysqli mysqli.c 
    /php-src/ext/pdo    pdo_dbh.c pdo_stmt.c 
    /php-src/ext/pdo_sqlite     sqlite_driver.c 
    /php-src/ext/pgsql  pgsql.c 
    /php-src/ext/reflection     php_reflection.c 
    /php-src/ext/soap   soap.c 
    /php-src/ext/spl    php_spl.c spl_directory.c 
    /php-src/ext/sqlite sqlite.c 
    /php-src/ext/sqlite3        sqlite3.c 
    /php-src/ext/xml    xml.c 
    /php-src/ext/xsl    xsltprocessor.c 
    /php-src/main/streams       userspace.c 
  Log:
  Fixed bug #46409 (__invoke method called outside of object context when using 
array_map)
  
  
http://cvs.php.net/viewvc.cgi/php-src/NEWS?r1=1.2027.2.547.2.965.2.391&r2=1.2027.2.547.2.965.2.392&diff_format=u
Index: php-src/NEWS
diff -u php-src/NEWS:1.2027.2.547.2.965.2.391 
php-src/NEWS:1.2027.2.547.2.965.2.392
--- php-src/NEWS:1.2027.2.547.2.965.2.391       Thu Nov 27 08:44:56 2008
+++ php-src/NEWS        Thu Nov 27 19:01:18 2008
@@ -41,6 +41,8 @@
 - Fixed bug #46546 (Segmentation fault when using declare statement with
   non-string value). (Felipe)
 - Fixed bug #46421 (SplFileInfo not correctly handling /). (Etienne)
+- Fixed bug #46409 (__invoke method called outside of object context when using
+  array_map). (Dmitry)
 - Fixed bug #46331 - (Segfault when using internal fileinfo magic file on big
   endian systems). (Scott)
 - Fixed bug #46285 (lastInsertId() returns "0" when a deferenced PDOStatement 
is
http://cvs.php.net/viewvc.cgi/ZendEngine2/zend_API.c?r1=1.296.2.27.2.34.2.57&r2=1.296.2.27.2.34.2.58&diff_format=u
Index: ZendEngine2/zend_API.c
diff -u ZendEngine2/zend_API.c:1.296.2.27.2.34.2.57 
ZendEngine2/zend_API.c:1.296.2.27.2.34.2.58
--- ZendEngine2/zend_API.c:1.296.2.27.2.34.2.57 Tue Nov 25 22:15:22 2008
+++ ZendEngine2/zend_API.c      Thu Nov 27 19:01:19 2008
@@ -18,7 +18,7 @@
    +----------------------------------------------------------------------+
 */
 
-/* $Id: zend_API.c,v 1.296.2.27.2.34.2.57 2008/11/25 22:15:22 stas Exp $ */
+/* $Id: zend_API.c,v 1.296.2.27.2.34.2.58 2008/11/27 19:01:19 dmitry Exp $ */
 
 #include "zend.h"
 #include "zend_execute.h"
@@ -2329,8 +2329,8 @@
                } else {
                        fcc->called_scope = EG(called_scope);
                        fcc->calling_scope = EG(scope);
-                       if (!fcc->object_pp) {
-                               fcc->object_pp = EG(This) ? &EG(This) : NULL;
+                       if (!fcc->object_ptr) {
+                               fcc->object_ptr = EG(This);
                        }
                        ret = 1;
                }
@@ -2343,8 +2343,8 @@
                } else {
                        fcc->called_scope = EG(called_scope);
                        fcc->calling_scope = EG(scope)->parent;
-                       if (!fcc->object_pp) {
-                               fcc->object_pp = EG(This) ? &EG(This) : NULL;
+                       if (!fcc->object_ptr) {
+                               fcc->object_ptr = EG(This);
                        }
                        ret = 1;
                }
@@ -2355,8 +2355,8 @@
                } else {
                        fcc->called_scope = EG(called_scope);
                        fcc->calling_scope = EG(called_scope);
-                       if (!fcc->object_pp) {
-                               fcc->object_pp = EG(This) ? &EG(This) : NULL;
+                       if (!fcc->object_ptr) {
+                               fcc->object_ptr = EG(This);
                        }
                        ret = 1;
                }
@@ -2364,13 +2364,13 @@
                zend_class_entry *scope = EG(active_op_array) ? 
EG(active_op_array)->scope : NULL;
 
                fcc->calling_scope = *pce;
-               if (scope && !fcc->object_pp && EG(This) &&
+               if (scope && !fcc->object_ptr && EG(This) &&
                    instanceof_function(Z_OBJCE_P(EG(This)), scope TSRMLS_CC) &&
                    instanceof_function(scope, fcc->calling_scope TSRMLS_CC)) {
-                       fcc->object_pp = &EG(This);
-                       fcc->called_scope = Z_OBJCE_PP(fcc->object_pp);
+                       fcc->object_ptr = EG(This);
+                       fcc->called_scope = Z_OBJCE_P(fcc->object_ptr);
                } else {
-                       fcc->called_scope = fcc->object_pp ? 
Z_OBJCE_PP(fcc->object_pp) : fcc->calling_scope;
+                       fcc->called_scope = fcc->object_ptr ? 
Z_OBJCE_P(fcc->object_ptr) : fcc->calling_scope;
                }
                ret = 1;
        } else {
@@ -2480,9 +2480,9 @@
                                fcc->function_handler = priv_fbc;
                        }
                }
-       } else if (fcc->object_pp) {
-               if (Z_OBJ_HT_PP(fcc->object_pp)->get_method) {
-                       fcc->function_handler = 
Z_OBJ_HT_PP(fcc->object_pp)->get_method(fcc->object_pp, mname, mlen TSRMLS_CC);
+       } else if (fcc->object_ptr) {
+               if (Z_OBJ_HT_P(fcc->object_ptr)->get_method) {
+                       fcc->function_handler = 
Z_OBJ_HT_P(fcc->object_ptr)->get_method(&fcc->object_ptr, mname, mlen 
TSRMLS_CC);
                        retval = fcc->function_handler ? 1 : 0;
                        call_via_handler = 1;
                }
@@ -2498,7 +2498,7 @@
 
        if (retval) {
                if (fcc->calling_scope && !call_via_handler) {
-                       if (!fcc->object_pp && 
!(fcc->function_handler->common.fn_flags & ZEND_ACC_STATIC)) {
+                       if (!fcc->object_ptr && 
!(fcc->function_handler->common.fn_flags & ZEND_ACC_STATIC)) {
                                int severity;
                                char *verb;
                                if (fcc->function_handler->common.fn_flags & 
ZEND_ACC_ALLOW_STATIC) {
@@ -2513,7 +2513,7 @@
                                        retval = 0;
                                }
                                if (EG(This) && 
instanceof_function(Z_OBJCE_P(EG(This)), fcc->calling_scope TSRMLS_CC)) {
-                                       fcc->object_pp = &EG(This);
+                                       fcc->object_ptr = EG(This);
                                        if (error) {
                                                zend_spprintf(error, 0, 
"non-static method %s::%s() %s be called statically, assuming $this from 
compatible context %s", fcc->calling_scope->name, 
fcc->function_handler->common.function_name, verb, Z_OBJCE_P(EG(This))->name);
                                        } else if (retval) {
@@ -2529,7 +2529,7 @@
                        }
                        if (retval && (check_flags & 
IS_CALLABLE_CHECK_NO_ACCESS) == 0) {
                                if (fcc->function_handler->op_array.fn_flags & 
ZEND_ACC_PRIVATE) {
-                                       if 
(!zend_check_private(fcc->function_handler, fcc->object_pp ? 
Z_OBJCE_PP(fcc->object_pp) : EG(scope), lmname, mlen TSRMLS_CC)) {
+                                       if 
(!zend_check_private(fcc->function_handler, fcc->object_ptr ? 
Z_OBJCE_P(fcc->object_ptr) : EG(scope), lmname, mlen TSRMLS_CC)) {
                                                if (error) {
                                                        if (*error) {
                                                                efree(*error);
@@ -2560,8 +2560,8 @@
        }
        efree(lmname);
 
-       if (fcc->object_pp) {
-               fcc->called_scope = Z_OBJCE_PP(fcc->object_pp);
+       if (fcc->object_ptr) {
+               fcc->called_scope = Z_OBJCE_P(fcc->object_ptr);
        }
        if (retval) {
                fcc->initialized = 1;
@@ -2570,7 +2570,7 @@
 }
 /* }}} */
 
-ZEND_API zend_bool zend_is_callable_ex(zval *callable, zval **object_pp, uint 
check_flags, char **callable_name, int *callable_name_len, 
zend_fcall_info_cache *fcc, char **error TSRMLS_DC) /* {{{ */
+ZEND_API zend_bool zend_is_callable_ex(zval *callable, zval *object_ptr, uint 
check_flags, char **callable_name, int *callable_name_len, 
zend_fcall_info_cache *fcc, char **error TSRMLS_DC) /* {{{ */
 {
        zend_bool ret;
        int callable_name_len_local;
@@ -2594,22 +2594,22 @@
        fcc->called_scope = NULL;
        fcc->function_handler = NULL;
        fcc->calling_scope = NULL;
-       fcc->object_pp = NULL;
+       fcc->object_ptr = NULL;
 
-       if (object_pp && (!*object_pp ||  Z_TYPE_PP(object_pp) != IS_OBJECT)) {
-               object_pp = NULL;
+       if (object_ptr && Z_TYPE_P(object_ptr) != IS_OBJECT) {
+               object_ptr = NULL;
        }
-       if (object_pp &&
+       if (object_ptr &&
            (!EG(objects_store).object_buckets || 
-            
!EG(objects_store).object_buckets[Z_OBJ_HANDLE_PP(object_pp)].valid)) {
+            
!EG(objects_store).object_buckets[Z_OBJ_HANDLE_P(object_ptr)].valid)) {
                return 0;
        }
 
        switch (Z_TYPE_P(callable)) {
                case IS_STRING:
-                       if (object_pp && *object_pp) {
-                               fcc->object_pp = object_pp;
-                               fcc->calling_scope = Z_OBJCE_PP(object_pp);
+                       if (object_ptr) {
+                               fcc->object_ptr = object_ptr;
+                               fcc->calling_scope = Z_OBJCE_P(object_ptr);
                                if (callable_name) {
                                        char *ptr;
 
@@ -2687,7 +2687,7 @@
 
                                                fcc->calling_scope = 
Z_OBJCE_PP(obj); /* TBFixed: what if it's overloaded? */
 
-                                               fcc->object_pp = obj;
+                                               fcc->object_ptr = *obj;
 
                                                if (callable_name) {
                                                        char *ptr;
@@ -2740,7 +2740,7 @@
                        return 0;
 
                case IS_OBJECT:
-                       if (Z_OBJ_HANDLER_P(callable, get_closure) && 
Z_OBJ_HANDLER_P(callable, get_closure)(callable, &fcc->calling_scope, 
&fcc->function_handler, NULL, &fcc->object_pp TSRMLS_CC) == SUCCESS) {
+                       if (Z_OBJ_HANDLER_P(callable, get_closure) && 
Z_OBJ_HANDLER_P(callable, get_closure)(callable, &fcc->calling_scope, 
&fcc->function_handler, &fcc->object_ptr TSRMLS_CC) == SUCCESS) {
                                fcc->called_scope = fcc->calling_scope;
                                if (callable_name) {
                                        zend_class_entry *ce = 
Z_OBJCE_P(callable); /* TBFixed: what if it's overloaded? */
@@ -2811,7 +2811,7 @@
 
        fci->size = sizeof(*fci);
        fci->function_table = fcc->calling_scope ? 
&fcc->calling_scope->function_table : EG(function_table);
-       fci->object_pp = fcc->object_pp;
+       fci->object_ptr = fcc->object_ptr;
        fci->function_name = callable;
        fci->retval_ptr_ptr = NULL;
        fci->param_count = 0;
http://cvs.php.net/viewvc.cgi/ZendEngine2/zend_API.h?r1=1.207.2.8.2.8.2.22&r2=1.207.2.8.2.8.2.23&diff_format=u
Index: ZendEngine2/zend_API.h
diff -u ZendEngine2/zend_API.h:1.207.2.8.2.8.2.22 
ZendEngine2/zend_API.h:1.207.2.8.2.8.2.23
--- ZendEngine2/zend_API.h:1.207.2.8.2.8.2.22   Mon Nov 17 11:27:53 2008
+++ ZendEngine2/zend_API.h      Thu Nov 27 19:01:19 2008
@@ -18,7 +18,7 @@
    +----------------------------------------------------------------------+
 */
 
-/* $Id: zend_API.h,v 1.207.2.8.2.8.2.22 2008/11/17 11:27:53 felipe Exp $ */
+/* $Id: zend_API.h,v 1.207.2.8.2.8.2.23 2008/11/27 19:01:19 dmitry Exp $ */
 
 #ifndef ZEND_API_H
 #define ZEND_API_H
@@ -48,7 +48,7 @@
        zval **retval_ptr_ptr;
        zend_uint param_count;
        zval ***params;
-       zval **object_pp;
+       zval *object_ptr;
        zend_bool no_separation;
 } zend_fcall_info;
 
@@ -57,7 +57,7 @@
        zend_function *function_handler;
        zend_class_entry *calling_scope;
        zend_class_entry *called_scope;
-       zval **object_pp;
+       zval *object_ptr;
 } zend_fcall_info_cache;
 
 #define ZEND_NS_NAME(ns, name)                 ns"\\"name
@@ -277,7 +277,7 @@
 
 #define IS_CALLABLE_STRICT  (IS_CALLABLE_CHECK_IS_STATIC)
 
-ZEND_API zend_bool zend_is_callable_ex(zval *callable, zval **object_pp, uint 
check_flags, char **callable_name, int *callable_name_len, 
zend_fcall_info_cache *fcc, char **error TSRMLS_DC);
+ZEND_API zend_bool zend_is_callable_ex(zval *callable, zval *object_ptr, uint 
check_flags, char **callable_name, int *callable_name_len, 
zend_fcall_info_cache *fcc, char **error TSRMLS_DC);
 ZEND_API zend_bool zend_is_callable(zval *callable, uint check_flags, char 
**callable_name TSRMLS_DC);
 ZEND_API zend_bool zend_make_callable(zval *callable, char **callable_name 
TSRMLS_DC);
 ZEND_API const char *zend_get_module_version(const char *module_name);
http://cvs.php.net/viewvc.cgi/ZendEngine2/zend_closures.c?r1=1.3.2.14&r2=1.3.2.15&diff_format=u
Index: ZendEngine2/zend_closures.c
diff -u ZendEngine2/zend_closures.c:1.3.2.14 
ZendEngine2/zend_closures.c:1.3.2.15
--- ZendEngine2/zend_closures.c:1.3.2.14        Wed Sep 17 13:08:53 2008
+++ ZendEngine2/zend_closures.c Thu Nov 27 19:01:19 2008
@@ -17,7 +17,7 @@
    +----------------------------------------------------------------------+
 */
 
-/* $Id: zend_closures.c,v 1.3.2.14 2008/09/17 13:08:53 dmitry Exp $ */
+/* $Id: zend_closures.c,v 1.3.2.15 2008/11/27 19:01:19 dmitry Exp $ */
 
 #include "zend.h"
 #include "zend_API.h"
@@ -209,7 +209,7 @@
 }
 /* }}} */
 
-int zend_closure_get_closure(zval *obj, zend_class_entry **ce_ptr, 
zend_function **fptr_ptr, zval **zobj_ptr, zval ***zobj_ptr_ptr TSRMLS_DC) /* 
{{{ */
+int zend_closure_get_closure(zval *obj, zend_class_entry **ce_ptr, 
zend_function **fptr_ptr, zval **zobj_ptr TSRMLS_DC) /* {{{ */
 {
        zend_closure *closure;
 
@@ -224,17 +224,11 @@
                if (zobj_ptr) {
                        *zobj_ptr = closure->this_ptr;
                }
-               if (zobj_ptr_ptr) {
-                       *zobj_ptr_ptr = &closure->this_ptr;
-               }
                *ce_ptr = Z_OBJCE_P(closure->this_ptr);
        } else {
                if (zobj_ptr) {
                        *zobj_ptr = NULL;
                }
-               if (zobj_ptr_ptr) {
-                       *zobj_ptr_ptr = NULL;
-               }
                *ce_ptr = closure->func.common.scope;
        }
        return SUCCESS;
http://cvs.php.net/viewvc.cgi/ZendEngine2/zend_exceptions.c?r1=1.79.2.6.2.9.2.17&r2=1.79.2.6.2.9.2.18&diff_format=u
Index: ZendEngine2/zend_exceptions.c
diff -u ZendEngine2/zend_exceptions.c:1.79.2.6.2.9.2.17 
ZendEngine2/zend_exceptions.c:1.79.2.6.2.9.2.18
--- ZendEngine2/zend_exceptions.c:1.79.2.6.2.9.2.17     Mon Nov 17 11:27:53 2008
+++ ZendEngine2/zend_exceptions.c       Thu Nov 27 19:01:19 2008
@@ -19,7 +19,7 @@
    +----------------------------------------------------------------------+
 */
 
-/* $Id: zend_exceptions.c,v 1.79.2.6.2.9.2.17 2008/11/17 11:27:53 felipe Exp $ 
*/
+/* $Id: zend_exceptions.c,v 1.79.2.6.2.9.2.18 2008/11/27 19:01:19 dmitry Exp $ 
*/
 
 #include "zend.h"
 #include "zend_API.h"
@@ -551,7 +551,7 @@
                fci.function_table = &Z_OBJCE_P(exception)->function_table;
                fci.function_name = &fname;
                fci.symbol_table = NULL;
-               fci.object_pp = &exception;
+               fci.object_ptr = exception;
                fci.retval_ptr_ptr = &trace;
                fci.param_count = 0;
                fci.params = NULL;
http://cvs.php.net/viewvc.cgi/ZendEngine2/zend_execute_API.c?r1=1.331.2.20.2.24.2.66&r2=1.331.2.20.2.24.2.67&diff_format=u
Index: ZendEngine2/zend_execute_API.c
diff -u ZendEngine2/zend_execute_API.c:1.331.2.20.2.24.2.66 
ZendEngine2/zend_execute_API.c:1.331.2.20.2.24.2.67
--- ZendEngine2/zend_execute_API.c:1.331.2.20.2.24.2.66 Tue Nov 25 21:14:23 2008
+++ ZendEngine2/zend_execute_API.c      Thu Nov 27 19:01:19 2008
@@ -17,7 +17,7 @@
    +----------------------------------------------------------------------+
 */
 
-/* $Id: zend_execute_API.c,v 1.331.2.20.2.24.2.66 2008/11/25 21:14:23 felipe 
Exp $ */
+/* $Id: zend_execute_API.c,v 1.331.2.20.2.24.2.67 2008/11/27 19:01:19 dmitry 
Exp $ */
 
 #include <stdio.h>
 #include <signal.h>
@@ -715,7 +715,7 @@
 
        fci.size = sizeof(fci);
        fci.function_table = function_table;
-       fci.object_pp = object_pp;
+       fci.object_ptr = object_pp ? *object_pp : NULL;
        fci.function_name = function_name;
        fci.retval_ptr_ptr = retval_ptr_ptr;
        fci.param_count = param_count;
@@ -782,7 +782,7 @@
                        fci_cache = &fci_cache_local;
                }
 
-               if (!zend_is_callable_ex(fci->function_name, fci->object_pp, 
IS_CALLABLE_CHECK_SILENT, &callable_name, NULL, fci_cache, &error TSRMLS_CC)) {
+               if (!zend_is_callable_ex(fci->function_name, fci->object_ptr, 
IS_CALLABLE_CHECK_SILENT, &callable_name, NULL, fci_cache, &error TSRMLS_CC)) {
                        if (error) {
                                zend_error(E_WARNING, "Invalid callback %s, 
%s", callable_name, error);
                                efree(error);
@@ -805,10 +805,10 @@
        EX(function_state).function = fci_cache->function_handler;
        calling_scope = fci_cache->calling_scope;
        called_scope = fci_cache->called_scope;
-       fci->object_pp = fci_cache->object_pp;
-       EX(object) = fci->object_pp ? *fci->object_pp : NULL;
-       if (fci->object_pp && *fci->object_pp && Z_TYPE_PP(fci->object_pp) == 
IS_OBJECT &&
-           (!EG(objects_store).object_buckets || 
!EG(objects_store).object_buckets[Z_OBJ_HANDLE_PP(fci->object_pp)].valid)) {
+       fci->object_ptr = fci_cache->object_ptr;
+       EX(object) = fci->object_ptr;
+       if (fci->object_ptr && Z_TYPE_P(fci->object_ptr) == IS_OBJECT &&
+           (!EG(objects_store).object_buckets || 
!EG(objects_store).object_buckets[Z_OBJ_HANDLE_P(fci->object_ptr)].valid)) {
                return FAILURE;
        }
 
@@ -886,11 +886,11 @@
                EG(called_scope) = NULL;
        }
 
-       if (fci->object_pp) {
+       if (fci->object_ptr) {
                if ((EX(function_state).function->common.fn_flags & 
ZEND_ACC_STATIC)) {
                        EG(This) = NULL;
                } else {
-                       EG(This) = *fci->object_pp;
+                       EG(This) = fci->object_ptr;
 
                        if (!PZVAL_IS_REF(EG(This))) {
                                Z_ADDREF_P(EG(This)); /* For $this pointer */
@@ -947,7 +947,7 @@
                if (EX(function_state).function->common.scope) {
                        EG(scope) = EX(function_state).function->common.scope;
                }
-               ((zend_internal_function *) 
EX(function_state).function)->handler(fci->param_count, *fci->retval_ptr_ptr, 
fci->retval_ptr_ptr, (fci->object_pp?*fci->object_pp:NULL), 1 TSRMLS_CC);
+               ((zend_internal_function *) 
EX(function_state).function)->handler(fci->param_count, *fci->retval_ptr_ptr, 
fci->retval_ptr_ptr, fci->object_ptr, 1 TSRMLS_CC);
                /*  We shouldn't fix bad extensions here,
                        because it can break proper ones (Bug #34045)
                if (!EX(function_state).function->common.return_reference)
@@ -967,8 +967,8 @@
                ALLOC_INIT_ZVAL(*fci->retval_ptr_ptr);
 
                /* Not sure what should be done here if it's a static method */
-               if (fci->object_pp) {
-                       
Z_OBJ_HT_PP(fci->object_pp)->call_method(EX(function_state).function->common.function_name,
 fci->param_count, *fci->retval_ptr_ptr, fci->retval_ptr_ptr, *fci->object_pp, 
1 TSRMLS_CC);
+               if (fci->object_ptr) {
+                       
Z_OBJ_HT_P(fci->object_ptr)->call_method(EX(function_state).function->common.function_name,
 fci->param_count, *fci->retval_ptr_ptr, fci->retval_ptr_ptr, fci->object_ptr, 
1 TSRMLS_CC);
                } else {
                        zend_error_noreturn(E_ERROR, "Cannot call overloaded 
function for non-object");
                }
@@ -1065,14 +1065,14 @@
        fcall_info.retval_ptr_ptr = &retval_ptr;
        fcall_info.param_count = 1;
        fcall_info.params = args;
-       fcall_info.object_pp = NULL;
+       fcall_info.object_ptr = NULL;
        fcall_info.no_separation = 1;
 
        fcall_cache.initialized = EG(autoload_func) ? 1 : 0;
        fcall_cache.function_handler = EG(autoload_func);
        fcall_cache.calling_scope = NULL;
        fcall_cache.called_scope = NULL;
-       fcall_cache.object_pp = NULL;
+       fcall_cache.object_ptr = NULL;
 
        zend_exception_save(TSRMLS_C);
        retval = zend_call_function(&fcall_info, &fcall_cache TSRMLS_CC);
http://cvs.php.net/viewvc.cgi/ZendEngine2/zend_interfaces.c?r1=1.33.2.4.2.6.2.9&r2=1.33.2.4.2.6.2.10&diff_format=u
Index: ZendEngine2/zend_interfaces.c
diff -u ZendEngine2/zend_interfaces.c:1.33.2.4.2.6.2.9 
ZendEngine2/zend_interfaces.c:1.33.2.4.2.6.2.10
--- ZendEngine2/zend_interfaces.c:1.33.2.4.2.6.2.9      Mon Nov 17 11:27:53 2008
+++ ZendEngine2/zend_interfaces.c       Thu Nov 27 19:01:19 2008
@@ -16,7 +16,7 @@
    +----------------------------------------------------------------------+
 */
 
-/* $Id: zend_interfaces.c,v 1.33.2.4.2.6.2.9 2008/11/17 11:27:53 felipe Exp $ 
*/
+/* $Id: zend_interfaces.c,v 1.33.2.4.2.6.2.10 2008/11/27 19:01:19 dmitry Exp $ 
*/
 
 #include "zend.h"
 #include "zend_API.h"
@@ -46,7 +46,7 @@
 
        fci.size = sizeof(fci);
        /*fci.function_table = NULL; will be read form zend_class_entry of 
object if needed */
-       fci.object_pp = object_pp;
+       fci.object_ptr = object_pp ? *object_pp : NULL;
        fci.function_name = &z_fname;
        fci.retval_ptr_ptr = retval_ptr_ptr ? retval_ptr_ptr : &retval;
        fci.param_count = param_count;
@@ -85,7 +85,7 @@
                }
                fcic.calling_scope = obj_ce;
                fcic.called_scope = object_pp ? obj_ce : EG(called_scope);
-               fcic.object_pp = object_pp;
+               fcic.object_ptr = object_pp ? *object_pp : NULL;
                result = zend_call_function(&fci, &fcic TSRMLS_CC);
        }
        if (result == FAILURE) {
http://cvs.php.net/viewvc.cgi/ZendEngine2/zend_object_handlers.c?r1=1.135.2.6.2.22.2.21&r2=1.135.2.6.2.22.2.22&diff_format=u
Index: ZendEngine2/zend_object_handlers.c
diff -u ZendEngine2/zend_object_handlers.c:1.135.2.6.2.22.2.21 
ZendEngine2/zend_object_handlers.c:1.135.2.6.2.22.2.22
--- ZendEngine2/zend_object_handlers.c:1.135.2.6.2.22.2.21      Fri Oct 17 
10:26:07 2008
+++ ZendEngine2/zend_object_handlers.c  Thu Nov 27 19:01:19 2008
@@ -17,7 +17,7 @@
    +----------------------------------------------------------------------+
 */
 
-/* $Id: zend_object_handlers.c,v 1.135.2.6.2.22.2.21 2008/10/17 10:26:07 
dmitry Exp $ */
+/* $Id: zend_object_handlers.c,v 1.135.2.6.2.22.2.22 2008/11/27 19:01:19 
dmitry Exp $ */
 
 #include "zend.h"
 #include "zend_globals.h"
@@ -1270,7 +1270,7 @@
 }
 /* }}} */
 
-int zend_std_get_closure(zval *obj, zend_class_entry **ce_ptr, zend_function 
**fptr_ptr, zval **zobj_ptr, zval ***zobj_ptr_ptr TSRMLS_DC) /* {{{ */
+int zend_std_get_closure(zval *obj, zend_class_entry **ce_ptr, zend_function 
**fptr_ptr, zval **zobj_ptr TSRMLS_DC) /* {{{ */
 {
        zend_class_entry *ce;
        if (Z_TYPE_P(obj) != IS_OBJECT) {
@@ -1288,16 +1288,10 @@
                if (zobj_ptr) {
                        *zobj_ptr = NULL;
                }
-               if (zobj_ptr_ptr) {
-                       *zobj_ptr_ptr = NULL;
-               }
        } else {
                if (zobj_ptr) {
                        *zobj_ptr = obj;
                }
-               if (zobj_ptr_ptr) {
-                       *zobj_ptr_ptr = NULL;
-               }
        }
        return SUCCESS;
 }
http://cvs.php.net/viewvc.cgi/ZendEngine2/zend_object_handlers.h?r1=1.47.2.2.2.5.2.5&r2=1.47.2.2.2.5.2.6&diff_format=u
Index: ZendEngine2/zend_object_handlers.h
diff -u ZendEngine2/zend_object_handlers.h:1.47.2.2.2.5.2.5 
ZendEngine2/zend_object_handlers.h:1.47.2.2.2.5.2.6
--- ZendEngine2/zend_object_handlers.h:1.47.2.2.2.5.2.5 Thu Aug 14 21:36:56 2008
+++ ZendEngine2/zend_object_handlers.h  Thu Nov 27 19:01:19 2008
@@ -17,7 +17,7 @@
    +----------------------------------------------------------------------+
 */
 
-/* $Id: zend_object_handlers.h,v 1.47.2.2.2.5.2.5 2008/08/14 21:36:56 colder 
Exp $ */
+/* $Id: zend_object_handlers.h,v 1.47.2.2.2.5.2.6 2008/11/27 19:01:19 dmitry 
Exp $ */
 
 #ifndef ZEND_OBJECT_HANDLERS_H
 #define ZEND_OBJECT_HANDLERS_H
@@ -108,7 +108,7 @@
  * Returns FAILURE if the object does not have any sense of overloaded 
dimensions */
 typedef int (*zend_object_count_elements_t)(zval *object, long *count 
TSRMLS_DC);
 
-typedef int (*zend_object_get_closure_t)(zval *obj, zend_class_entry **ce_ptr, 
union _zend_function **fptr_ptr, zval **zobj_ptr, zval ***zobj_ptr_ptr 
TSRMLS_DC);
+typedef int (*zend_object_get_closure_t)(zval *obj, zend_class_entry **ce_ptr, 
union _zend_function **fptr_ptr, zval **zobj_ptr TSRMLS_DC);
 
 struct _zend_object_handlers {
        /* general object functions */
http://cvs.php.net/viewvc.cgi/ZendEngine2/zend_vm_def.h?r1=1.59.2.29.2.48.2.76&r2=1.59.2.29.2.48.2.77&diff_format=u
Index: ZendEngine2/zend_vm_def.h
diff -u ZendEngine2/zend_vm_def.h:1.59.2.29.2.48.2.76 
ZendEngine2/zend_vm_def.h:1.59.2.29.2.48.2.77
--- ZendEngine2/zend_vm_def.h:1.59.2.29.2.48.2.76       Wed Nov 19 02:00:50 2008
+++ ZendEngine2/zend_vm_def.h   Thu Nov 27 19:01:19 2008
@@ -18,7 +18,7 @@
    +----------------------------------------------------------------------+
 */
 
-/* $Id: zend_vm_def.h,v 1.59.2.29.2.48.2.76 2008/11/19 02:00:50 colder Exp $ */
+/* $Id: zend_vm_def.h,v 1.59.2.29.2.48.2.77 2008/11/27 19:01:19 dmitry Exp $ */
 
 /* If you change this file, please regenerate the zend_vm_execute.h and
  * zend_vm_opcodes.h files by running:
@@ -2067,7 +2067,7 @@
 
                if (Z_TYPE_P(function_name) == IS_OBJECT &&
                        Z_OBJ_HANDLER_P(function_name, get_closure) &&
-                       Z_OBJ_HANDLER_P(function_name, 
get_closure)(function_name, &EX(called_scope), &EX(fbc), &EX(object), NULL 
TSRMLS_CC) == SUCCESS) {
+                       Z_OBJ_HANDLER_P(function_name, 
get_closure)(function_name, &EX(called_scope), &EX(fbc), &EX(object) TSRMLS_CC) 
== SUCCESS) {
                        if (EX(object)) {
                                Z_ADDREF_P(EX(object));
                        }
http://cvs.php.net/viewvc.cgi/ZendEngine2/zend_vm_execute.h?r1=1.62.2.30.2.49.2.76&r2=1.62.2.30.2.49.2.77&diff_format=u
Index: ZendEngine2/zend_vm_execute.h
diff -u ZendEngine2/zend_vm_execute.h:1.62.2.30.2.49.2.76 
ZendEngine2/zend_vm_execute.h:1.62.2.30.2.49.2.77
--- ZendEngine2/zend_vm_execute.h:1.62.2.30.2.49.2.76   Wed Nov 19 02:00:50 2008
+++ ZendEngine2/zend_vm_execute.h       Thu Nov 27 19:01:19 2008
@@ -749,7 +749,7 @@
 
                if (Z_TYPE_P(function_name) == IS_OBJECT &&
                        Z_OBJ_HANDLER_P(function_name, get_closure) &&
-                       Z_OBJ_HANDLER_P(function_name, 
get_closure)(function_name, &EX(called_scope), &EX(fbc), &EX(object), NULL 
TSRMLS_CC) == SUCCESS) {
+                       Z_OBJ_HANDLER_P(function_name, 
get_closure)(function_name, &EX(called_scope), &EX(fbc), &EX(object) TSRMLS_CC) 
== SUCCESS) {
                        if (EX(object)) {
                                Z_ADDREF_P(EX(object));
                        }
@@ -946,7 +946,7 @@
 
                if (Z_TYPE_P(function_name) == IS_OBJECT &&
                        Z_OBJ_HANDLER_P(function_name, get_closure) &&
-                       Z_OBJ_HANDLER_P(function_name, 
get_closure)(function_name, &EX(called_scope), &EX(fbc), &EX(object), NULL 
TSRMLS_CC) == SUCCESS) {
+                       Z_OBJ_HANDLER_P(function_name, 
get_closure)(function_name, &EX(called_scope), &EX(fbc), &EX(object) TSRMLS_CC) 
== SUCCESS) {
                        if (EX(object)) {
                                Z_ADDREF_P(EX(object));
                        }
@@ -1051,7 +1051,7 @@
 
                if (Z_TYPE_P(function_name) == IS_OBJECT &&
                        Z_OBJ_HANDLER_P(function_name, get_closure) &&
-                       Z_OBJ_HANDLER_P(function_name, 
get_closure)(function_name, &EX(called_scope), &EX(fbc), &EX(object), NULL 
TSRMLS_CC) == SUCCESS) {
+                       Z_OBJ_HANDLER_P(function_name, 
get_closure)(function_name, &EX(called_scope), &EX(fbc), &EX(object) TSRMLS_CC) 
== SUCCESS) {
                        if (EX(object)) {
                                Z_ADDREF_P(EX(object));
                        }
@@ -1184,7 +1184,7 @@
 
                if (Z_TYPE_P(function_name) == IS_OBJECT &&
                        Z_OBJ_HANDLER_P(function_name, get_closure) &&
-                       Z_OBJ_HANDLER_P(function_name, 
get_closure)(function_name, &EX(called_scope), &EX(fbc), &EX(object), NULL 
TSRMLS_CC) == SUCCESS) {
+                       Z_OBJ_HANDLER_P(function_name, 
get_closure)(function_name, &EX(called_scope), &EX(fbc), &EX(object) TSRMLS_CC) 
== SUCCESS) {
                        if (EX(object)) {
                                Z_ADDREF_P(EX(object));
                        }
http://cvs.php.net/viewvc.cgi/php-src/ext/curl/interface.c?r1=1.62.2.14.2.27.2.20&r2=1.62.2.14.2.27.2.21&diff_format=u
Index: php-src/ext/curl/interface.c
diff -u php-src/ext/curl/interface.c:1.62.2.14.2.27.2.20 
php-src/ext/curl/interface.c:1.62.2.14.2.27.2.21
--- php-src/ext/curl/interface.c:1.62.2.14.2.27.2.20    Thu Nov 27 17:00:04 2008
+++ php-src/ext/curl/interface.c        Thu Nov 27 19:01:22 2008
@@ -16,7 +16,7 @@
    +----------------------------------------------------------------------+
 */
 
-/* $Id: interface.c,v 1.62.2.14.2.27.2.20 2008/11/27 17:00:04 iliaa Exp $ */
+/* $Id: interface.c,v 1.62.2.14.2.27.2.21 2008/11/27 19:01:22 dmitry Exp $ */
 
 #define ZEND_INCLUDE_FULL_WINDOWS_HEADERS
 
@@ -850,7 +850,7 @@
 
                        fci.size = sizeof(fci);
                        fci.function_table = EG(function_table);
-                       fci.object_pp = NULL;
+                       fci.object_ptr = NULL;
                        fci.function_name = t->func_name;
                        fci.retval_ptr_ptr = &retval_ptr;
                        fci.param_count = 2;
@@ -923,7 +923,7 @@
                        fci.size = sizeof(fci);
                        fci.function_table = EG(function_table);
                        fci.function_name = t->func_name;
-                       fci.object_pp = NULL;
+                       fci.object_ptr = NULL;
                        fci.retval_ptr_ptr = &retval_ptr;
                        fci.param_count = 3;
                        fci.params = argv;
@@ -1000,7 +1000,7 @@
                        fci.function_table = EG(function_table);
                        fci.function_name = t->func_name;
                        fci.symbol_table = NULL;
-                       fci.object_pp = NULL;
+                       fci.object_ptr = NULL;
                        fci.retval_ptr_ptr = &retval_ptr;
                        fci.param_count = 2;
                        fci.params = argv;
http://cvs.php.net/viewvc.cgi/php-src/ext/dom/xpath.c?r1=1.26.2.1.2.1.2.10&r2=1.26.2.1.2.1.2.11&diff_format=u
Index: php-src/ext/dom/xpath.c
diff -u php-src/ext/dom/xpath.c:1.26.2.1.2.1.2.10 
php-src/ext/dom/xpath.c:1.26.2.1.2.1.2.11
--- php-src/ext/dom/xpath.c:1.26.2.1.2.1.2.10   Wed Nov 19 02:00:53 2008
+++ php-src/ext/dom/xpath.c     Thu Nov 27 19:01:22 2008
@@ -17,7 +17,7 @@
    +----------------------------------------------------------------------+
 */
 
-/* $Id: xpath.c,v 1.26.2.1.2.1.2.10 2008/11/19 02:00:53 colder Exp $ */
+/* $Id: xpath.c,v 1.26.2.1.2.1.2.11 2008/11/27 19:01:22 dmitry Exp $ */
 
 #ifdef HAVE_CONFIG_H
 #include "config.h"
@@ -197,7 +197,7 @@
 
        fci.function_name = &handler;
        fci.symbol_table = NULL;
-       fci.object_pp = NULL;
+       fci.object_ptr = NULL;
        fci.retval_ptr_ptr = &retval;
        fci.no_separation = 0;
 
http://cvs.php.net/viewvc.cgi/php-src/ext/mysql/php_mysql.c?r1=1.213.2.6.2.16.2.30&r2=1.213.2.6.2.16.2.31&diff_format=u
Index: php-src/ext/mysql/php_mysql.c
diff -u php-src/ext/mysql/php_mysql.c:1.213.2.6.2.16.2.30 
php-src/ext/mysql/php_mysql.c:1.213.2.6.2.16.2.31
--- php-src/ext/mysql/php_mysql.c:1.213.2.6.2.16.2.30   Mon Oct 27 23:27:21 2008
+++ php-src/ext/mysql/php_mysql.c       Thu Nov 27 19:01:22 2008
@@ -18,7 +18,7 @@
    +----------------------------------------------------------------------+
 */
  
-/* $Id: php_mysql.c,v 1.213.2.6.2.16.2.30 2008/10/27 23:27:21 iliaa Exp $ */
+/* $Id: php_mysql.c,v 1.213.2.6.2.16.2.31 2008/11/27 19:01:22 dmitry Exp $ */
 
 /* TODO:
  *
@@ -2199,7 +2199,7 @@
                        fci.function_table = &ce->function_table;
                        fci.function_name = NULL;
                        fci.symbol_table = NULL;
-                       fci.object_pp = &return_value;
+                       fci.object_ptr = return_value;
                        fci.retval_ptr_ptr = &retval_ptr;
                        if (ctor_params && Z_TYPE_P(ctor_params) != IS_NULL) {
                                if (Z_TYPE_P(ctor_params) == IS_ARRAY) {
@@ -2233,7 +2233,7 @@
                        fcc.function_handler = ce->constructor;
                        fcc.calling_scope = EG(scope);
                        fcc.called_scope = Z_OBJCE_P(return_value);
-                       fcc.object_pp = &return_value;
+                       fcc.object_ptr = return_value;
                
                        if (zend_call_function(&fci, &fcc TSRMLS_CC) == 
FAILURE) {
                                
zend_throw_exception_ex(zend_exception_get_default(TSRMLS_C), 0 TSRMLS_CC, 
"Could not execute %s::%s()", ce->name, ce->constructor->common.function_name);
http://cvs.php.net/viewvc.cgi/php-src/ext/mysqli/mysqli.c?r1=1.72.2.16.2.17.2.32&r2=1.72.2.16.2.17.2.33&diff_format=u
Index: php-src/ext/mysqli/mysqli.c
diff -u php-src/ext/mysqli/mysqli.c:1.72.2.16.2.17.2.32 
php-src/ext/mysqli/mysqli.c:1.72.2.16.2.17.2.33
--- php-src/ext/mysqli/mysqli.c:1.72.2.16.2.17.2.32     Tue Nov 18 17:02:17 2008
+++ php-src/ext/mysqli/mysqli.c Thu Nov 27 19:01:22 2008
@@ -17,7 +17,7 @@
   |          Ulf Wendel <[EMAIL PROTECTED]>                                    
 |
   +----------------------------------------------------------------------+
 
-  $Id: mysqli.c,v 1.72.2.16.2.17.2.32 2008/11/18 17:02:17 andrey Exp $ 
+  $Id: mysqli.c,v 1.72.2.16.2.17.2.33 2008/11/27 19:01:22 dmitry Exp $ 
 */
 
 #ifdef HAVE_CONFIG_H
@@ -1275,7 +1275,7 @@
                        fci.function_table = &ce->function_table;
                        fci.function_name = NULL;
                        fci.symbol_table = NULL;
-                       fci.object_pp = &return_value;
+                       fci.object_ptr = return_value;
                        fci.retval_ptr_ptr = &retval_ptr;
                        if (ctor_params && Z_TYPE_P(ctor_params) != IS_NULL) {
                                if (Z_TYPE_P(ctor_params) == IS_ARRAY) {
@@ -1309,7 +1309,7 @@
                        fcc.function_handler = ce->constructor;
                        fcc.calling_scope = EG(scope);
                        fcc.called_scope = Z_OBJCE_P(return_value);
-                       fcc.object_pp = &return_value;
+                       fcc.object_ptr = return_value;
 
                        if (zend_call_function(&fci, &fcc TSRMLS_CC) == 
FAILURE) {
                                
zend_throw_exception_ex(zend_exception_get_default(TSRMLS_C), 0 TSRMLS_CC, 
"Could not execute %s::%s()", ce->name, ce->constructor->common.function_name);
http://cvs.php.net/viewvc.cgi/php-src/ext/pdo/pdo_dbh.c?r1=1.82.2.31.2.17.2.16&r2=1.82.2.31.2.17.2.17&diff_format=u
Index: php-src/ext/pdo/pdo_dbh.c
diff -u php-src/ext/pdo/pdo_dbh.c:1.82.2.31.2.17.2.16 
php-src/ext/pdo/pdo_dbh.c:1.82.2.31.2.17.2.17
--- php-src/ext/pdo/pdo_dbh.c:1.82.2.31.2.17.2.16       Thu Nov 13 14:40:06 2008
+++ php-src/ext/pdo/pdo_dbh.c   Thu Nov 27 19:01:22 2008
@@ -18,7 +18,7 @@
   +----------------------------------------------------------------------+
 */
 
-/* $Id: pdo_dbh.c,v 1.82.2.31.2.17.2.16 2008/11/13 14:40:06 pajoye Exp $ */
+/* $Id: pdo_dbh.c,v 1.82.2.31.2.17.2.17 2008/11/27 19:01:22 dmitry Exp $ */
 
 /* The PDO Database Handle Class */
 
@@ -454,7 +454,7 @@
                fci.size = sizeof(zend_fcall_info);
                fci.function_table = &dbstmt_ce->function_table;
                fci.function_name = NULL;
-               fci.object_pp = &object;
+               fci.object_ptr = object;
                fci.symbol_table = NULL;
                fci.retval_ptr_ptr = &retval;
                if (ctor_args) {
@@ -478,7 +478,7 @@
                fcc.function_handler = dbstmt_ce->constructor;
                fcc.calling_scope = EG(scope);
                fcc.called_scope = Z_OBJCE_P(object);
-               fcc.object_pp = &object;
+               fcc.object_ptr = object;
 
                if (zend_call_function(&fci, &fcc TSRMLS_CC) == FAILURE) {
                        zval_dtor(object);
http://cvs.php.net/viewvc.cgi/php-src/ext/pdo/pdo_stmt.c?r1=1.118.2.38.2.24.2.37&r2=1.118.2.38.2.24.2.38&diff_format=u
Index: php-src/ext/pdo/pdo_stmt.c
diff -u php-src/ext/pdo/pdo_stmt.c:1.118.2.38.2.24.2.37 
php-src/ext/pdo/pdo_stmt.c:1.118.2.38.2.24.2.38
--- php-src/ext/pdo/pdo_stmt.c:1.118.2.38.2.24.2.37     Mon Nov 17 11:27:57 2008
+++ php-src/ext/pdo/pdo_stmt.c  Thu Nov 27 19:01:22 2008
@@ -18,7 +18,7 @@
   +----------------------------------------------------------------------+
 */
 
-/* $Id: pdo_stmt.c,v 1.118.2.38.2.24.2.37 2008/11/17 11:27:57 felipe Exp $ */
+/* $Id: pdo_stmt.c,v 1.118.2.38.2.24.2.38 2008/11/27 19:01:22 dmitry Exp $ */
 
 /* The PDO Statement Handle Class */
 
@@ -786,7 +786,7 @@
 
 static int make_callable_ex(pdo_stmt_t *stmt, zval *callable, zend_fcall_info 
* fci, zend_fcall_info_cache * fcc, int num_args TSRMLS_DC) /* {{{ */
 {
-       zval **object = NULL, **method = NULL;
+       zval *object = NULL, **method = NULL;
        char *fname = NULL, *cname;
        zend_class_entry * ce = NULL, **pce;
        zend_function *function_handler;
@@ -796,19 +796,19 @@
                        pdo_raise_impl_error(stmt->dbh, stmt, "HY000", 
"user-supplied function must be a valid callback" TSRMLS_CC);
                        return 0;
                }
-               object = (zval**)Z_ARRVAL_P(callable)->pListHead->pData;
+               object = *(zval**)Z_ARRVAL_P(callable)->pListHead->pData;
                method = 
(zval**)Z_ARRVAL_P(callable)->pListHead->pListNext->pData;
 
-               if (Z_TYPE_PP(object) == IS_STRING) { /* static call */
-                       if (zend_lookup_class(Z_STRVAL_PP(object), 
Z_STRLEN_PP(object), &pce TSRMLS_CC) == FAILURE) {
+               if (Z_TYPE_P(object) == IS_STRING) { /* static call */
+                       if (zend_lookup_class(Z_STRVAL_P(object), 
Z_STRLEN_P(object), &pce TSRMLS_CC) == FAILURE) {
                                pdo_raise_impl_error(stmt->dbh, stmt, "HY000", 
"user-supplied class does not exist" TSRMLS_CC);
                                return 0;
                        } else {
                                ce = *pce;
                        }
                        object = NULL;
-               } else if (Z_TYPE_PP(object) == IS_OBJECT) { /* object call */
-                       ce = Z_OBJCE_PP(object);
+               } else if (Z_TYPE_P(object) == IS_OBJECT) { /* object call */
+                       ce = Z_OBJCE_P(object);
                } else {
                        pdo_raise_impl_error(stmt->dbh, stmt, "HY000", 
"user-supplied function must be a valid callback; bogus object/class name" 
TSRMLS_CC);
                        return 0;
@@ -868,13 +868,13 @@
        fci->symbol_table = NULL;
        fci->param_count = num_args; /* probably less */
        fci->params = safe_emalloc(sizeof(zval**), num_args, 0);
-       fci->object_pp = object;
+       fci->object_ptr = object;
 
        fcc->initialized = 1;
        fcc->function_handler = function_handler;
        fcc->calling_scope = EG(scope);
-       fcc->called_scope = object ? Z_OBJCE_PP(object) : NULL;
-       fcc->object_pp = object;
+       fcc->called_scope = object ? Z_OBJCE_P(object) : NULL;
+       fcc->object_ptr = object;
        
        return 1;
 }
@@ -1042,8 +1042,8 @@
                                                }
                                        }
                                        if (ce->constructor && (flags & 
PDO_FETCH_PROPS_LATE)) {
-                                               stmt->fetch.cls.fci.object_pp = 
&return_value;
-                                               stmt->fetch.cls.fcc.object_pp = 
&return_value;
+                                               stmt->fetch.cls.fci.object_ptr 
= return_value;
+                                               stmt->fetch.cls.fcc.object_ptr 
= return_value;
                                                if 
(zend_call_function(&stmt->fetch.cls.fci, &stmt->fetch.cls.fcc TSRMLS_CC) == 
FAILURE) {
                                                        
pdo_raise_impl_error(stmt->dbh, stmt, "HY000", "could not call class 
constructor" TSRMLS_CC);
                                                        return 0;
@@ -1242,8 +1242,8 @@
                switch (how) {
                        case PDO_FETCH_CLASS:
                                if (ce->constructor && !(flags & 
PDO_FETCH_PROPS_LATE)) {
-                                       stmt->fetch.cls.fci.object_pp = 
&return_value;
-                                       stmt->fetch.cls.fcc.object_pp = 
&return_value;
+                                       stmt->fetch.cls.fci.object_ptr = 
return_value;
+                                       stmt->fetch.cls.fcc.object_ptr = 
return_value;
                                        if 
(zend_call_function(&stmt->fetch.cls.fci, &stmt->fetch.cls.fcc TSRMLS_CC) == 
FAILURE) {
                                                pdo_raise_impl_error(stmt->dbh, 
stmt, "HY000", "could not call class constructor" TSRMLS_CC);
                                                return 0;
http://cvs.php.net/viewvc.cgi/php-src/ext/pdo_sqlite/sqlite_driver.c?r1=1.20.2.5.2.2.2.3&r2=1.20.2.5.2.2.2.4&diff_format=u
Index: php-src/ext/pdo_sqlite/sqlite_driver.c
diff -u php-src/ext/pdo_sqlite/sqlite_driver.c:1.20.2.5.2.2.2.3 
php-src/ext/pdo_sqlite/sqlite_driver.c:1.20.2.5.2.2.2.4
--- php-src/ext/pdo_sqlite/sqlite_driver.c:1.20.2.5.2.2.2.3     Sat Aug  2 
04:46:06 2008
+++ php-src/ext/pdo_sqlite/sqlite_driver.c      Thu Nov 27 19:01:22 2008
@@ -16,7 +16,7 @@
   +----------------------------------------------------------------------+
 */
 
-/* $Id: sqlite_driver.c,v 1.20.2.5.2.2.2.3 2008/08/02 04:46:06 felipe Exp $ */
+/* $Id: sqlite_driver.c,v 1.20.2.5.2.2.2.4 2008/11/27 19:01:22 dmitry Exp $ */
 
 #ifdef HAVE_CONFIG_H
 #include "config.h"
@@ -308,7 +308,7 @@
        fc->fci.function_table = EG(function_table);
        fc->fci.function_name = cb;
        fc->fci.symbol_table = NULL;
-       fc->fci.object_pp = NULL;
+       fc->fci.object_ptr = NULL;
        fc->fci.retval_ptr_ptr = &retval;
        fc->fci.param_count = fake_argc;
        
http://cvs.php.net/viewvc.cgi/php-src/ext/pgsql/pgsql.c?r1=1.331.2.13.2.24.2.22&r2=1.331.2.13.2.24.2.23&diff_format=u
Index: php-src/ext/pgsql/pgsql.c
diff -u php-src/ext/pgsql/pgsql.c:1.331.2.13.2.24.2.22 
php-src/ext/pgsql/pgsql.c:1.331.2.13.2.24.2.23
--- php-src/ext/pgsql/pgsql.c:1.331.2.13.2.24.2.22      Mon Nov 17 11:27:57 2008
+++ php-src/ext/pgsql/pgsql.c   Thu Nov 27 19:01:22 2008
@@ -20,7 +20,7 @@
    +----------------------------------------------------------------------+
  */
  
-/* $Id: pgsql.c,v 1.331.2.13.2.24.2.22 2008/11/17 11:27:57 felipe Exp $ */
+/* $Id: pgsql.c,v 1.331.2.13.2.24.2.23 2008/11/27 19:01:22 dmitry Exp $ */
 
 #include <stdlib.h>
 
@@ -2529,7 +2529,7 @@
                        fci.function_table = &ce->function_table;
                        fci.function_name = NULL;
                        fci.symbol_table = NULL;
-                       fci.object_pp = &return_value;
+                       fci.object_ptr = return_value;
                        fci.retval_ptr_ptr = &retval_ptr;
                        if (ctor_params && Z_TYPE_P(ctor_params) != IS_NULL) {
                                if (Z_TYPE_P(ctor_params) == IS_ARRAY) {
@@ -2563,7 +2563,7 @@
                        fcc.function_handler = ce->constructor;
                        fcc.calling_scope = EG(scope);
                        fcc.called_scope = Z_OBJCE_P(return_value);
-                       fcc.object_pp = &return_value;
+                       fcc.object_ptr = return_value;
                
                        if (zend_call_function(&fci, &fcc TSRMLS_CC) == 
FAILURE) {
                                
zend_throw_exception_ex(zend_exception_get_default(TSRMLS_C), 0 TSRMLS_CC, 
"Could not execute %s::%s()", ce->name, ce->constructor->common.function_name);
http://cvs.php.net/viewvc.cgi/php-src/ext/reflection/php_reflection.c?r1=1.164.2.33.2.45.2.41&r2=1.164.2.33.2.45.2.42&diff_format=u
Index: php-src/ext/reflection/php_reflection.c
diff -u php-src/ext/reflection/php_reflection.c:1.164.2.33.2.45.2.41 
php-src/ext/reflection/php_reflection.c:1.164.2.33.2.45.2.42
--- php-src/ext/reflection/php_reflection.c:1.164.2.33.2.45.2.41        Mon Nov 
17 11:27:58 2008
+++ php-src/ext/reflection/php_reflection.c     Thu Nov 27 19:01:22 2008
@@ -20,7 +20,7 @@
    +----------------------------------------------------------------------+
 */
 
-/* $Id: php_reflection.c,v 1.164.2.33.2.45.2.41 2008/11/17 11:27:58 felipe Exp 
$ */
+/* $Id: php_reflection.c,v 1.164.2.33.2.45.2.42 2008/11/27 19:01:22 dmitry Exp 
$ */
 
 #ifdef HAVE_CONFIG_H
 #include "config.h"
@@ -1275,7 +1275,7 @@
        fci.function_table = NULL;
        fci.function_name = NULL;
        fci.symbol_table = NULL;
-       fci.object_pp = &reflector_ptr;
+       fci.object_ptr = reflector_ptr;
        fci.retval_ptr_ptr = &retval_ptr;
        fci.param_count = ctor_argc;
        fci.params = params;
@@ -1285,7 +1285,7 @@
        fcc.function_handler = ce_ptr->constructor;
        fcc.calling_scope = ce_ptr;
        fcc.called_scope = Z_OBJCE_P(reflector_ptr);
-       fcc.object_pp = &reflector_ptr;
+       fcc.object_ptr = reflector_ptr;
 
        result = zend_call_function(&fci, &fcc TSRMLS_CC);
        
@@ -1310,7 +1310,7 @@
        ZVAL_STRINGL(&fname, "reflection::export", sizeof("reflection::export") 
- 1, 0);
        fci.function_table = &reflection_ptr->function_table;
        fci.function_name = &fname;
-       fci.object_pp = NULL;
+       fci.object_ptr = NULL;
        fci.retval_ptr_ptr = &retval_ptr;
        fci.param_count = 2;
        fci.params = params;
@@ -1653,7 +1653,7 @@
        fci.function_table = NULL;
        fci.function_name = NULL;
        fci.symbol_table = NULL;
-       fci.object_pp = NULL;
+       fci.object_ptr = NULL;
        fci.retval_ptr_ptr = &retval_ptr;
        fci.param_count = num_args;
        fci.params = params;
@@ -1663,7 +1663,7 @@
        fcc.function_handler = fptr;
        fcc.calling_scope = EG(scope);
        fcc.called_scope = NULL;
-       fcc.object_pp = NULL;
+       fcc.object_ptr = NULL;
 
        result = zend_call_function(&fci, &fcc TSRMLS_CC);
 
@@ -1718,7 +1718,7 @@
        fci.function_table = NULL;
        fci.function_name = NULL;
        fci.symbol_table = NULL;
-       fci.object_pp = NULL;
+       fci.object_ptr = NULL;
        fci.retval_ptr_ptr = &retval_ptr;
        fci.param_count = argc;
        fci.params = params;
@@ -1728,7 +1728,7 @@
        fcc.function_handler = fptr;
        fcc.calling_scope = EG(scope);
        fcc.called_scope = NULL;
-       fcc.object_pp = NULL;
+       fcc.object_ptr = NULL;
 
        result = zend_call_function(&fci, &fcc TSRMLS_CC);
 
@@ -2448,7 +2448,7 @@
 {
        zval *retval_ptr;
        zval ***params = NULL;
-       zval **object_pp;
+       zval *object_ptr;
        reflection_object *intern;
        zend_function *mptr;
        int result, num_args = 0;
@@ -2481,14 +2481,14 @@
                return;
        }
        
-       /* In case this is a static method, we should'nt pass an object_pp
+       /* In case this is a static method, we should'nt pass an object_ptr
         * (which is used as calling context aka $this). We can thus ignore the
         * first parameter.
         *
         * Else, we verify that the given object is an instance of the class.
         */
        if (mptr->common.fn_flags & ZEND_ACC_STATIC) {
-               object_pp = NULL;
+               object_ptr = NULL;
                obj_ce = mptr->common.scope;
        } else {
                if (Z_TYPE_PP(params[0]) != IS_OBJECT) {
@@ -2507,14 +2507,14 @@
                        /* Returns from this function */
                }
        
-               object_pp = params[0];
+               object_ptr = *params[0];
        }
        
        fci.size = sizeof(fci);
        fci.function_table = NULL;
        fci.function_name = NULL;
        fci.symbol_table = NULL;
-       fci.object_pp = object_pp;
+       fci.object_ptr = object_ptr;
        fci.retval_ptr_ptr = &retval_ptr;
        fci.param_count = num_args - 1;
        fci.params = params + 1;
@@ -2524,7 +2524,7 @@
        fcc.function_handler = mptr;
        fcc.calling_scope = obj_ce;
        fcc.called_scope = obj_ce;
-       fcc.object_pp = object_pp;
+       fcc.object_ptr = object_ptr;
 
        result = zend_call_function(&fci, &fcc TSRMLS_CC);
        
@@ -2591,7 +2591,7 @@
        zend_hash_apply_with_argument(Z_ARRVAL_P(param_array), 
(apply_func_arg_t)_zval_array_to_c_array, &params TSRMLS_CC);    
        params -= argc;
        
-       /* In case this is a static method, we should'nt pass an object_pp
+       /* In case this is a static method, we should'nt pass an object_ptr
         * (which is used as calling context aka $this). We can thus ignore the
         * first parameter.
         *
@@ -2622,7 +2622,7 @@
        fci.function_table = NULL;
        fci.function_name = NULL;
        fci.symbol_table = NULL;
-       fci.object_pp = &object;
+       fci.object_ptr = object;
        fci.retval_ptr_ptr = &retval_ptr;
        fci.param_count = argc;
        fci.params = params;
@@ -2632,7 +2632,7 @@
        fcc.function_handler = mptr;
        fcc.calling_scope = obj_ce;
        fcc.called_scope = obj_ce;
-       fcc.object_pp = object ? &object : NULL;
+       fcc.object_ptr = object;
 
        result = zend_call_function(&fci, &fcc TSRMLS_CC);
        
@@ -3701,7 +3701,7 @@
                fci.function_table = EG(function_table);
                fci.function_name = NULL;
                fci.symbol_table = NULL;
-               fci.object_pp = &return_value;
+               fci.object_ptr = return_value;
                fci.retval_ptr_ptr = &retval_ptr;
                fci.param_count = num_args;
                fci.params = params;
@@ -3711,7 +3711,7 @@
                fcc.function_handler = ce->constructor;
                fcc.calling_scope = EG(scope);
                fcc.called_scope = Z_OBJCE_P(return_value);
-               fcc.object_pp = &return_value;
+               fcc.object_ptr = return_value;
 
                if (zend_call_function(&fci, &fcc TSRMLS_CC) == FAILURE) {
                        if (params) {
@@ -3781,7 +3781,7 @@
                fci.function_table = EG(function_table);
                fci.function_name = NULL;
                fci.symbol_table = NULL;
-               fci.object_pp = &return_value;
+               fci.object_ptr = return_value;
                fci.retval_ptr_ptr = &retval_ptr;
                fci.param_count = argc;
                fci.params = params;
@@ -3791,7 +3791,7 @@
                fcc.function_handler = ce->constructor;
                fcc.calling_scope = EG(scope);
                fcc.called_scope = Z_OBJCE_P(return_value);
-               fcc.object_pp = &return_value;
+               fcc.object_ptr = return_value;
 
                if (zend_call_function(&fci, &fcc TSRMLS_CC) == FAILURE) {
                        if (params) {
@@ -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.164.2.33.2.45.2.41 2008/11/17 11:27:58 felipe Exp $");
+       php_info_print_table_row(2, "Version", "$Id: php_reflection.c,v 
1.164.2.33.2.45.2.42 2008/11/27 19:01:22 dmitry Exp $");
 
        php_info_print_table_end();
 } /* }}} */
http://cvs.php.net/viewvc.cgi/php-src/ext/soap/soap.c?r1=1.156.2.28.2.30.2.28&r2=1.156.2.28.2.30.2.29&diff_format=u
Index: php-src/ext/soap/soap.c
diff -u php-src/ext/soap/soap.c:1.156.2.28.2.30.2.28 
php-src/ext/soap/soap.c:1.156.2.28.2.30.2.29
--- php-src/ext/soap/soap.c:1.156.2.28.2.30.2.28        Thu Nov 27 11:25:39 2008
+++ php-src/ext/soap/soap.c     Thu Nov 27 19:01:23 2008
@@ -17,7 +17,7 @@
   |          Dmitry Stogov <[EMAIL PROTECTED]>                             |
   +----------------------------------------------------------------------+
 */
-/* $Id: soap.c,v 1.156.2.28.2.30.2.28 2008/11/27 11:25:39 dmitry Exp $ */
+/* $Id: soap.c,v 1.156.2.28.2.30.2.29 2008/11/27 19:01:23 dmitry Exp $ */
 
 #ifdef HAVE_CONFIG_H
 #include "config.h"
@@ -999,7 +999,7 @@
        fci.function_table = &Z_OBJCE_P(getThis())->function_table;
        fci.function_name = &fname;
        fci.symbol_table = NULL;
-       fci.object_pp = &getThis();
+       fci.object_ptr = getThis();
        fci.retval_ptr_ptr = &trace;
        fci.param_count = 0;
        fci.params = NULL;
http://cvs.php.net/viewvc.cgi/php-src/ext/spl/php_spl.c?r1=1.52.2.28.2.17.2.30&r2=1.52.2.28.2.17.2.31&diff_format=u
Index: php-src/ext/spl/php_spl.c
diff -u php-src/ext/spl/php_spl.c:1.52.2.28.2.17.2.30 
php-src/ext/spl/php_spl.c:1.52.2.28.2.17.2.31
--- php-src/ext/spl/php_spl.c:1.52.2.28.2.17.2.30       Mon Nov 17 11:27:59 2008
+++ php-src/ext/spl/php_spl.c   Thu Nov 27 19:01:23 2008
@@ -16,7 +16,7 @@
    +----------------------------------------------------------------------+
  */
 
-/* $Id: php_spl.c,v 1.52.2.28.2.17.2.30 2008/11/17 11:27:59 felipe Exp $ */
+/* $Id: php_spl.c,v 1.52.2.28.2.17.2.31 2008/11/27 19:01:23 dmitry Exp $ */
 
 #ifdef HAVE_CONFIG_H
 #include "config.h"
@@ -424,7 +424,7 @@
        zend_bool prepend  = 0;
        zend_function *spl_func_ptr;
        autoload_func_info alfi;
-       zval **obj_ptr;
+       zval *obj_ptr;
        zend_fcall_info_cache fcc;
 
        if (zend_parse_parameters_ex(ZEND_PARSE_PARAMS_QUIET, ZEND_NUM_ARGS() 
TSRMLS_CC, "|zbb", &zcallable, &do_throw, &prepend) == FAILURE) {
@@ -446,7 +446,7 @@
                if (!zend_is_callable_ex(zcallable, NULL, IS_CALLABLE_STRICT, 
&func_name, &func_name_len, &fcc, &error TSRMLS_CC)) {
                        alfi.ce = fcc.calling_scope;
                        alfi.func_ptr = fcc.function_handler;
-                       obj_ptr = fcc.object_pp;
+                       obj_ptr = fcc.object_ptr;
                        if (Z_TYPE_P(zcallable) == IS_ARRAY) {
                                if (!obj_ptr && alfi.func_ptr && 
!(alfi.func_ptr->common.fn_flags & ZEND_ACC_STATIC)) {
                                        if (do_throw) {
@@ -488,7 +488,7 @@
                }
                alfi.ce = fcc.calling_scope;
                alfi.func_ptr = fcc.function_handler;
-               obj_ptr = fcc.object_pp;
+               obj_ptr = fcc.object_ptr;
                if (error) {
                        efree(error);
                }
@@ -503,10 +503,10 @@
 
                if (obj_ptr && !(alfi.func_ptr->common.fn_flags & 
ZEND_ACC_STATIC)) {
                        /* add object id to the hash to ensure uniqueness, for 
more reference look at bug #40091 */
-                       memcpy(lc_name + func_name_len, 
&Z_OBJ_HANDLE_PP(obj_ptr), sizeof(zend_object_handle));
+                       memcpy(lc_name + func_name_len, 
&Z_OBJ_HANDLE_P(obj_ptr), sizeof(zend_object_handle));
                        func_name_len += sizeof(zend_object_handle);
                        lc_name[func_name_len] = '\0';
-                       alfi.obj = *obj_ptr;
+                       alfi.obj = obj_ptr;
                        Z_ADDREF_P(alfi.obj);
                } else {
                        alfi.obj = NULL;
@@ -558,7 +558,7 @@
        zval *zcallable;
        int success = FAILURE;
        zend_function *spl_func_ptr;
-       zval **obj_ptr;
+       zval *obj_ptr;
        zend_fcall_info_cache fcc;
 
        if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "z", &zcallable) 
== FAILURE) {
@@ -575,7 +575,7 @@
                }
                RETURN_FALSE;
        }
-       obj_ptr = fcc.object_pp;
+       obj_ptr = fcc.object_ptr;
        if (error) {
                efree(error);
        }
@@ -595,7 +595,7 @@
                        success = zend_hash_del(SPL_G(autoload_functions), 
func_name, func_name_len+1);
                        if (success != SUCCESS && obj_ptr) {
                                func_name = erealloc(func_name, func_name_len + 
1 + sizeof(zend_object_handle));
-                               memcpy(func_name + func_name_len, 
&Z_OBJ_HANDLE_PP(obj_ptr), sizeof(zend_object_handle));
+                               memcpy(func_name + func_name_len, 
&Z_OBJ_HANDLE_P(obj_ptr), sizeof(zend_object_handle));
                                func_name_len += sizeof(zend_object_handle);
                                func_name[func_name_len] = '\0';
                                success = 
zend_hash_del(SPL_G(autoload_functions), func_name, func_name_len+1);
http://cvs.php.net/viewvc.cgi/php-src/ext/spl/spl_directory.c?r1=1.45.2.27.2.23.2.37&r2=1.45.2.27.2.23.2.38&diff_format=u
Index: php-src/ext/spl/spl_directory.c
diff -u php-src/ext/spl/spl_directory.c:1.45.2.27.2.23.2.37 
php-src/ext/spl/spl_directory.c:1.45.2.27.2.23.2.38
--- php-src/ext/spl/spl_directory.c:1.45.2.27.2.23.2.37 Wed Nov 19 02:00:53 2008
+++ php-src/ext/spl/spl_directory.c     Thu Nov 27 19:01:23 2008
@@ -16,7 +16,7 @@
    +----------------------------------------------------------------------+
  */
 
-/* $Id: spl_directory.c,v 1.45.2.27.2.23.2.37 2008/11/19 02:00:53 colder Exp $ 
*/
+/* $Id: spl_directory.c,v 1.45.2.27.2.23.2.38 2008/11/27 19:01:23 dmitry Exp $ 
*/
 
 #ifdef HAVE_CONFIG_H
 # include "config.h"
@@ -1805,7 +1805,7 @@
 
        fci.size = sizeof(fci);
        fci.function_table = EG(function_table);
-       fci.object_pp = NULL;
+       fci.object_ptr = NULL;
        fci.function_name = &z_fname;
        fci.retval_ptr_ptr = &retval;
        fci.param_count = num_args;
@@ -1817,7 +1817,7 @@
        fcic.function_handler = func_ptr;
        fcic.calling_scope = NULL;
        fcic.called_scope = NULL;
-       fcic.object_pp = NULL;
+       fcic.object_ptr = NULL;
 
        result = zend_call_function(&fci, &fcic TSRMLS_CC);
        
http://cvs.php.net/viewvc.cgi/php-src/ext/sqlite/sqlite.c?r1=1.166.2.13.2.9.2.17&r2=1.166.2.13.2.9.2.18&diff_format=u
Index: php-src/ext/sqlite/sqlite.c
diff -u php-src/ext/sqlite/sqlite.c:1.166.2.13.2.9.2.17 
php-src/ext/sqlite/sqlite.c:1.166.2.13.2.9.2.18
--- php-src/ext/sqlite/sqlite.c:1.166.2.13.2.9.2.17     Sat Nov 22 11:48:42 2008
+++ php-src/ext/sqlite/sqlite.c Thu Nov 27 19:01:23 2008
@@ -17,7 +17,7 @@
    |          Marcus Boerger <[EMAIL PROTECTED]>                              |
    +----------------------------------------------------------------------+
 
-   $Id: sqlite.c,v 1.166.2.13.2.9.2.17 2008/11/22 11:48:42 scottmac Exp $
+   $Id: sqlite.c,v 1.166.2.13.2.9.2.18 2008/11/27 19:01:23 dmitry Exp $
 */
 
 #ifdef HAVE_CONFIG_H
@@ -1458,7 +1458,7 @@
 {
        php_info_print_table_start();
        php_info_print_table_header(2, "SQLite support", "enabled");
-       php_info_print_table_row(2, "PECL Module version", 
PHP_SQLITE_MODULE_VERSION " $Id: sqlite.c,v 1.166.2.13.2.9.2.17 2008/11/22 
11:48:42 scottmac Exp $");
+       php_info_print_table_row(2, "PECL Module version", 
PHP_SQLITE_MODULE_VERSION " $Id: sqlite.c,v 1.166.2.13.2.9.2.18 2008/11/27 
19:01:23 dmitry Exp $");
        php_info_print_table_row(2, "SQLite Library", sqlite_libversion());
        php_info_print_table_row(2, "SQLite Encoding", sqlite_libencoding());
        php_info_print_table_end();
@@ -2415,7 +2415,7 @@
                fci.function_table = &ce->function_table;
                fci.function_name = NULL;
                fci.symbol_table = NULL;
-               fci.object_pp = &return_value;
+               fci.object_ptr = return_value;
                fci.retval_ptr_ptr = &retval_ptr;
                if (ctor_params && Z_TYPE_P(ctor_params) != IS_NULL) {
                        if (Z_TYPE_P(ctor_params) == IS_ARRAY) {
@@ -2449,7 +2449,7 @@
                fcc.function_handler = ce->constructor;
                fcc.calling_scope = EG(scope);
                fcc.called_scope = Z_OBJCE_P(return_value);
-               fcc.object_pp = &return_value;
+               fcc.object_ptr = return_value;
 
                if (zend_call_function(&fci, &fcc TSRMLS_CC) == FAILURE) {
                        zend_throw_exception_ex(sqlite_ce_exception, 0 
TSRMLS_CC, "Could not execute %s::%s()", class_name, 
ce->constructor->common.function_name);
http://cvs.php.net/viewvc.cgi/php-src/ext/sqlite3/sqlite3.c?r1=1.1.2.19&r2=1.1.2.20&diff_format=u
Index: php-src/ext/sqlite3/sqlite3.c
diff -u php-src/ext/sqlite3/sqlite3.c:1.1.2.19 
php-src/ext/sqlite3/sqlite3.c:1.1.2.20
--- php-src/ext/sqlite3/sqlite3.c:1.1.2.19      Thu Nov 20 10:22:55 2008
+++ php-src/ext/sqlite3/sqlite3.c       Thu Nov 27 19:01:23 2008
@@ -16,7 +16,7 @@
    +----------------------------------------------------------------------+
 */
 
-/* $Id: sqlite3.c,v 1.1.2.19 2008/11/20 10:22:55 pajoye Exp $ */
+/* $Id: sqlite3.c,v 1.1.2.20 2008/11/27 19:01:23 dmitry Exp $ */
 
 #ifdef HAVE_CONFIG_H
 #include "config.h"
@@ -608,7 +608,7 @@
        fc->fci.function_table = EG(function_table);
        fc->fci.function_name = cb;
        fc->fci.symbol_table = NULL;
-       fc->fci.object_pp = NULL;
+       fc->fci.object_ptr = NULL;
        fc->fci.retval_ptr_ptr = &retval;
        fc->fci.param_count = fake_argc;
 
http://cvs.php.net/viewvc.cgi/php-src/ext/xml/xml.c?r1=1.157.2.4.2.5.2.14&r2=1.157.2.4.2.5.2.15&diff_format=u
Index: php-src/ext/xml/xml.c
diff -u php-src/ext/xml/xml.c:1.157.2.4.2.5.2.14 
php-src/ext/xml/xml.c:1.157.2.4.2.5.2.15
--- php-src/ext/xml/xml.c:1.157.2.4.2.5.2.14    Mon Nov 17 11:28:00 2008
+++ php-src/ext/xml/xml.c       Thu Nov 27 19:01:23 2008
@@ -18,7 +18,7 @@
    +----------------------------------------------------------------------+
  */
 
-/* $Id: xml.c,v 1.157.2.4.2.5.2.14 2008/11/17 11:28:00 felipe Exp $ */
+/* $Id: xml.c,v 1.157.2.4.2.5.2.15 2008/11/27 19:01:23 dmitry Exp $ */
 
 #define IS_EXT_MODULE
 
@@ -520,7 +520,7 @@
                fci.function_table = EG(function_table);
                fci.function_name = handler;
                fci.symbol_table = NULL;
-               fci.object_pp = &parser->object;
+               fci.object_ptr = parser->object;
                fci.retval_ptr_ptr = &retval;
                fci.param_count = argc;
                fci.params = args;
http://cvs.php.net/viewvc.cgi/php-src/ext/xsl/xsltprocessor.c?r1=1.39.2.2.2.9.2.12&r2=1.39.2.2.2.9.2.13&diff_format=u
Index: php-src/ext/xsl/xsltprocessor.c
diff -u php-src/ext/xsl/xsltprocessor.c:1.39.2.2.2.9.2.12 
php-src/ext/xsl/xsltprocessor.c:1.39.2.2.2.9.2.13
--- php-src/ext/xsl/xsltprocessor.c:1.39.2.2.2.9.2.12   Mon Nov 17 11:28:00 2008
+++ php-src/ext/xsl/xsltprocessor.c     Thu Nov 27 19:01:23 2008
@@ -17,7 +17,7 @@
    +----------------------------------------------------------------------+
 */
 
-/* $Id: xsltprocessor.c,v 1.39.2.2.2.9.2.12 2008/11/17 11:28:00 felipe Exp $ */
+/* $Id: xsltprocessor.c,v 1.39.2.2.2.9.2.13 2008/11/27 19:01:23 dmitry Exp $ */
 
 #ifdef HAVE_CONFIG_H
 #include "config.h"
@@ -306,7 +306,7 @@
        
        fci.function_name = &handler;
        fci.symbol_table = NULL;
-       fci.object_pp = NULL;
+       fci.object_ptr = NULL;
        fci.retval_ptr_ptr = &retval;
        fci.no_separation = 0;
        /*fci.function_handler_cache = &function_ptr;*/
http://cvs.php.net/viewvc.cgi/php-src/main/streams/userspace.c?r1=1.31.2.3.2.7.2.6&r2=1.31.2.3.2.7.2.7&diff_format=u
Index: php-src/main/streams/userspace.c
diff -u php-src/main/streams/userspace.c:1.31.2.3.2.7.2.6 
php-src/main/streams/userspace.c:1.31.2.3.2.7.2.7
--- php-src/main/streams/userspace.c:1.31.2.3.2.7.2.6   Wed Nov 26 04:19:20 2008
+++ php-src/main/streams/userspace.c    Thu Nov 27 19:01:23 2008
@@ -17,7 +17,7 @@
    +----------------------------------------------------------------------+
 */
 
-/* $Id: userspace.c,v 1.31.2.3.2.7.2.6 2008/11/26 04:19:20 lbarnaud Exp $ */
+/* $Id: userspace.c,v 1.31.2.3.2.7.2.7 2008/11/27 19:01:23 dmitry Exp $ */
 
 #include "php.h"
 #include "php_globals.h"
@@ -299,7 +299,7 @@
                fci.function_table = &uwrap->ce->function_table;
                fci.function_name = NULL;
                fci.symbol_table = NULL;
-               fci.object_pp = &us->object;
+               fci.object_ptr = us->object;
                fci.retval_ptr_ptr = &retval_ptr;
                fci.param_count = 0;
                fci.params = NULL;
@@ -309,7 +309,7 @@
                fcc.function_handler = uwrap->ce->constructor;
                fcc.calling_scope = EG(scope);
                fcc.called_scope = Z_OBJCE_P(us->object);
-               fcc.object_pp = &us->object;
+               fcc.object_ptr = us->object;
 
                if (zend_call_function(&fci, &fcc TSRMLS_CC) == FAILURE) {
                        php_error_docref(NULL TSRMLS_CC, E_WARNING, "Could not 
execute %s::%s()", uwrap->ce->name, 
uwrap->ce->constructor->common.function_name);

http://cvs.php.net/viewvc.cgi/ZendEngine2/tests/bug46409.phpt?view=markup&rev=1.1
Index: ZendEngine2/tests/bug46409.phpt
+++ ZendEngine2/tests/bug46409.phpt

-- 
PHP CVS Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php

Reply via email to