Another one patch for ZE.
This one fixes the bug #29378.

It looks like this bug was done intentionally (I'm not sure, just an 
assumption), so zend_std_get_property_ptr_ptr() doesn't call __get.

Please look at the patch fro details.

-- 
Wbr,
Antony Dovgal aka tony2001
[EMAIL PROTECTED] || [EMAIL PROTECTED]
Index: zend_object_handlers.c
===================================================================
RCS file: /repository/ZendEngine2/zend_object_handlers.c,v
retrieving revision 1.104
diff -u -r1.104 zend_object_handlers.c
--- zend_object_handlers.c      22 Jul 2004 11:54:27 -0000      1.104
+++ zend_object_handlers.c      6 Sep 2004 05:28:17 -0000
@@ -474,8 +474,11 @@
                        new_zval->refcount++;
                        zend_hash_quick_update(zobj->properties, property_info->name, 
property_info->name_length+1, property_info->h, &new_zval, sizeof(zval *), (void **) 
&retval);
                } else {
-                       /* we do have getter - fail and let it try again with usual 
get/set */
-                       retval = NULL;
+                       zval *getter_retval = zend_std_call_getter(object, member 
TSRMLS_CC);
+                       if (!getter_retval) {
+                               getter_retval = &EG(uninitialized_zval);
+                       }
+                       retval = &getter_retval;
                }
        }
        if (member == &tmp_member) {

-- 
PHP Internals - PHP Runtime Development Mailing List
To unsubscribe, visit: http://www.php.net/unsub.php

Reply via email to