summaryrefslogtreecommitdiff
path: root/ext/soap/php_encoding.c
diff options
context:
space:
mode:
authorDmitry Stogov <dmitry@zend.com>2014-05-15 22:53:01 +0400
committerDmitry Stogov <dmitry@zend.com>2014-05-15 22:53:01 +0400
commitce8518e6528b5b0c01b369735253d2839be04ce3 (patch)
treee97b0124d2f18b3ac594b89c1affd3afb8befa24 /ext/soap/php_encoding.c
parent2709d4f18be71d82d632a61fc6bc47a9296d91a7 (diff)
downloadphp-git-ce8518e6528b5b0c01b369735253d2839be04ce3.tar.gz
Support for IS_INDIRECT
Diffstat (limited to 'ext/soap/php_encoding.c')
-rw-r--r--ext/soap/php_encoding.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/ext/soap/php_encoding.c b/ext/soap/php_encoding.c
index 29ca2ab41d..261912b75b 100644
--- a/ext/soap/php_encoding.c
+++ b/ext/soap/php_encoding.c
@@ -1992,6 +1992,13 @@ static xmlNodePtr to_xml_object(encodeTypePtr type, zval *data, int style, xmlNo
key_type = zend_hash_get_current_key_ex(prop, &str_key, &index, FALSE, &prop->nInternalPointer);
zprop = zend_hash_get_current_data(prop);
+ if (Z_TYPE_P(zprop) == IS_INDIRECT) {
+ zprop = Z_INDIRECT_P(zprop);
+ if (Z_TYPE_P(zprop) == IS_UNDEF) {
+ zend_hash_move_forward(prop);
+ continue;
+ }
+ }
property = master_to_xml(get_conversion(Z_TYPE_P(zprop)), zprop, style, xmlParam TSRMLS_CC);