From: Derick Rethans Date: Tue, 20 May 2003 13:08:05 +0000 (+0000) Subject: - Commit broken support for sxe_properties_get X-Git-Tag: RELEASE_1_0_2~703 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=92d5589a94e0be982e6c105e38c8c81f972ae690;p=php - Commit broken support for sxe_properties_get --- diff --git a/ext/simplexml/simplexml.c b/ext/simplexml/simplexml.c index 5b39719657..da21182e4e 100644 --- a/ext/simplexml/simplexml.c +++ b/ext/simplexml/simplexml.c @@ -269,7 +269,37 @@ sxe_property_delete(zval *object, zval *member TSRMLS_DC) static HashTable * sxe_properties_get(zval *object TSRMLS_DC) { - return NULL; + zval *return_value; + zval *value; + php_sxe_object *sxe; + char *name; + char *contents; + xmlNodePtr node; + xmlAttrPtr attr; + int counter = 0; + + MAKE_STD_ZVAL(return_value); + array_init(return_value); + + sxe = php_sxe_fetch_object(object TSRMLS_CC); + + GET_NODE(sxe, node); + + node = node->xmlChildrenNode; + if (!sxe->node) { + sxe->node = node; + } + + while (node) { + MAKE_STD_ZVAL(value); + _node_as_zval(sxe, node, value); + + add_next_index_zval(return_value, value); + + node = node->next; + } + + return return_value; } /* }}} */