]> granicus.if.org Git - php/commitdiff
Fixed IS_INDRICT handling
authorXinchen Hui <laruence@php.net>
Mon, 12 May 2014 02:52:37 +0000 (10:52 +0800)
committerXinchen Hui <laruence@php.net>
Mon, 12 May 2014 02:52:37 +0000 (10:52 +0800)
ext/wddx/wddx.c

index ad55652ee286e4606fe57b4eb8d47fddb25dde4f..18fd70b8c7394192ef2acc9d694397c5784f6fb3 100644 (file)
@@ -660,6 +660,9 @@ static void php_wddx_add_var(wddx_packet *packet, zval *name_var)
                        zend_rebuild_symbol_table(TSRMLS_C);
                }
                if ((val = zend_hash_find(&EG(active_symbol_table)->ht, Z_STR_P(name_var))) != NULL) {
+                       if (Z_TYPE_P(val) == IS_INDIRECT) {
+                               val = Z_INDIRECT_P(val);
+                       }
                        php_wddx_serialize_var(packet, val, Z_STR_P(name_var) TSRMLS_CC);
                }               
        } else if (Z_TYPE_P(name_var) == IS_ARRAY || Z_TYPE_P(name_var) == IS_OBJECT)   {