diff options
| author | Rob Richards <rrichards@php.net> | 2003-12-09 21:56:42 +0000 |
|---|---|---|
| committer | Rob Richards <rrichards@php.net> | 2003-12-09 21:56:42 +0000 |
| commit | 4756b5e05fecb3c0337ed758149d195e3d44d0c5 (patch) | |
| tree | 1d228e07079d4488921a8defc95eb5b1ce6ada16 /ext/dom/node.c | |
| parent | 1f33239c919006d7b927b80d6fff1836279656b4 (diff) | |
| download | php-git-4756b5e05fecb3c0337ed758149d195e3d44d0c5.tar.gz | |
fix possible mem leak when element has children
Diffstat (limited to 'ext/dom/node.c')
| -rw-r--r-- | ext/dom/node.c | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/ext/dom/node.c b/ext/dom/node.c index ee769fed8a..508970697a 100644 --- a/ext/dom/node.c +++ b/ext/dom/node.c @@ -154,8 +154,7 @@ int dom_node_node_value_read(dom_object *obj, zval **retval TSRMLS_DC) char *str = NULL; nodep = dom_object_get_node(obj); -/* TODO: Element node is invalid for this property - -currently here as a convience method while developing */ + /* Access to Element node is implemented as a convience method */ switch (nodep->type) { case XML_ATTRIBUTE_NODE: case XML_TEXT_NODE: @@ -193,7 +192,9 @@ int dom_node_node_value_write(dom_object *obj, zval *newval TSRMLS_DC) nodep = dom_object_get_node(obj); + /* Access to Element node is implemented as a convience method */ switch (nodep->type) { + case XML_ELEMENT_NODE: case XML_ATTRIBUTE_NODE: if (nodep->children) { node_list_unlink(nodep->children TSRMLS_CC); @@ -202,7 +203,6 @@ int dom_node_node_value_write(dom_object *obj, zval *newval TSRMLS_DC) case XML_COMMENT_NODE: case XML_CDATA_SECTION_NODE: case XML_PI_NODE: - case XML_ELEMENT_NODE: convert_to_string(newval); xmlNodeSetContentLen(nodep, Z_STRVAL_P(newval), Z_STRLEN_P(newval) + 1); break; |
