dmitry                                   Wed, 11 Aug 2010 08:34:54 +0000

Revision: http://svn.php.net/viewvc?view=revision&revision=302101

Log:
Fixed support for static properties of internal classes

Changed paths:
    U   php/php-src/trunk/Zend/zend_API.c

Modified: php/php-src/trunk/Zend/zend_API.c
===================================================================
--- php/php-src/trunk/Zend/zend_API.c   2010-08-11 08:30:44 UTC (rev 302100)
+++ php/php-src/trunk/Zend/zend_API.c   2010-08-11 08:34:54 UTC (rev 302101)
@@ -1044,12 +1044,15 @@
                                p = 
&class_type->default_static_members_table[i];
                                if (Z_ISREF_PP(p) &&
                                        class_type->parent &&
-                                       
class_type->parent->default_static_members_count < i &&
-                                       *p == 
class_type->parent->default_static_members_table[i]
+                                       i < 
class_type->parent->default_static_members_count &&
+                                       *p == 
class_type->parent->default_static_members_table[i] &&
+                                       CE_STATIC_MEMBERS(class_type->parent)[i]
                                ) {
-                                       Z_ADDREF_PP(p);
-                                       Z_SET_ISREF_PP(p);
-                                       CE_STATIC_MEMBERS(class_type)[i] = *p;
+                                       zval *q = 
CE_STATIC_MEMBERS(class_type->parent)[i];
+
+                                       Z_ADDREF_P(q);
+                                       Z_SET_ISREF_P(q);
+                                       CE_STATIC_MEMBERS(class_type)[i] = q;
                                } else {
                                        zval *r;


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

Reply via email to