diff options
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); |