Skip to content

Commit 706d4f3

Browse files
committed
Fix invalid usage of zend_bool in DOM extension
1 parent cb22758 commit 706d4f3

File tree

1 file changed

+5
-2
lines changed

1 file changed

+5
-2
lines changed

ext/dom/document.c

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -805,6 +805,8 @@ PHP_METHOD(DOMDocument, importNode)
805805
dom_object *intern, *nodeobj;
806806
int ret;
807807
zend_bool recursive = 0;
808+
/* See http://www.xmlsoft.org/html/libxml-tree.html#xmlDocCopyNode for meaning of values */
809+
int extended_recursive;
808810

809811
id = ZEND_THIS;
810812
if (zend_parse_parameters(ZEND_NUM_ARGS(), "O|b", &node, dom_node_class_entry, &recursive) == FAILURE) {
@@ -824,10 +826,11 @@ PHP_METHOD(DOMDocument, importNode)
824826
if (nodep->doc == docp) {
825827
retnodep = nodep;
826828
} else {
829+
extended_recursive = recursive;
827830
if ((recursive == 0) && (nodep->type == XML_ELEMENT_NODE)) {
828-
recursive = 2;
831+
extended_recursive = 2;
829832
}
830-
retnodep = xmlDocCopyNode(nodep, docp, recursive);
833+
retnodep = xmlDocCopyNode(nodep, docp, extended_recursive);
831834
if (!retnodep) {
832835
RETURN_FALSE;
833836
}

0 commit comments

Comments
 (0)