diff options
author | Benjamin Eberlei <kontakt@beberlei.de> | 2020-03-06 00:03:13 +0100 |
---|---|---|
committer | Benjamin Eberlei <kontakt@beberlei.de> | 2020-03-06 00:03:13 +0100 |
commit | 0d913f9acf821f4d3074ac457b93d7c478edbcc5 (patch) | |
tree | e80983a18dbeaf0067b76351968616b33b2bf37e /ext/dom/parentnode.c | |
parent | b8100a150afa80aa2b1eda43e798035d4dcc917a (diff) | |
download | php-git-0d913f9acf821f4d3074ac457b93d7c478edbcc5.tar.gz |
Fix another memory leak in dom_zvals_to_fragment.
Diffstat (limited to 'ext/dom/parentnode.c')
-rw-r--r-- | ext/dom/parentnode.c | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/ext/dom/parentnode.c b/ext/dom/parentnode.c index be30c79261..a9502a5159 100644 --- a/ext/dom/parentnode.c +++ b/ext/dom/parentnode.c @@ -179,6 +179,13 @@ xmlNode* dom_zvals_to_fragment(php_libxml_ref_obj *document, xmlNode *contextNod newNodeObj->document = document; xmlSetTreeDoc(newNode, documentNode); + if (newNode->type == XML_ATTRIBUTE_NODE) { + xmlFree(fragment); + + php_dom_throw_error(HIERARCHY_REQUEST_ERR, stricterror); + return NULL; + } + if (!xmlAddChild(fragment, newNode)) { xmlFree(fragment); |