diff --git a/src/xercesc/dom/impl/DOMParentNode.cpp b/src/xercesc/dom/impl/DOMParentNode.cpp index 27ec16d0273763a02fa2421fe1f7e658b3b3dc7b..a89399976f3fe193c7bf29740b3bfd09e3933491 100644 --- a/src/xercesc/dom/impl/DOMParentNode.cpp +++ b/src/xercesc/dom/impl/DOMParentNode.cpp @@ -404,7 +404,7 @@ void DOMParentNode::normalize() bool DOMParentNode::isEqualNode(const DOMNode* arg) { - if (castToNodeImpl(this)->isEqualNode(arg)) + if (arg && castToNodeImpl(this)->isEqualNode(arg)) { DOMNode *kid, *argKid; for (kid = fFirstChild, argKid = arg->getFirstChild(); @@ -414,7 +414,7 @@ bool DOMParentNode::isEqualNode(const DOMNode* arg) if (!kid->isEqualNode(argKid)) return false; } - return true; + return (kid || argKid) ? false : true; } return false; }