summarylogtreecommitdiffstats
path: root/xerces-containing-node.patch
diff options
context:
space:
mode:
Diffstat (limited to 'xerces-containing-node.patch')
-rw-r--r--xerces-containing-node.patch55
1 files changed, 55 insertions, 0 deletions
diff --git a/xerces-containing-node.patch b/xerces-containing-node.patch
new file mode 100644
index 000000000000..6ab3a5b104e4
--- /dev/null
+++ b/xerces-containing-node.patch
@@ -0,0 +1,55 @@
+--- a/src/dom-api/impl/XPathDocumentImpl.cpp 2017-09-03 19:24:35 UTC
++++ b/src/dom-api/impl/XPathDocumentImpl.cpp
+@@ -62,7 +62,11 @@ DOMNode *XPathDocumentImpl::insertBefore
+ if (thisNodeImpl->isReadOnly())
+ throw DOMException(DOMException::NO_MODIFICATION_ALLOWED_ERR, 0, getMemoryManager());
+
++#if _XERCES_VERSION >= 30200
++ DOMNode* thisNode = fParent.fContainingNode;
++#else
+ DOMNode* thisNode = castToNode(&fParent);
++#endif
+ if (newChild->getOwnerDocument() != thisNode)
+ throw DOMException(DOMException::WRONG_DOCUMENT_ERR, 0, getMemoryManager());
+
+--- a/src/dom-api/impl/XPathNamespaceImpl.cpp 2017-09-03 20:26:37 UTC
++++ b/src/dom-api/impl/XPathNamespaceImpl.cpp
+@@ -33,7 +33,11 @@ XERCES_CPP_NAMESPACE_USE;
+
+ XPathNamespaceImpl::XPathNamespaceImpl(const XMLCh* const nsPrefix,
+ const XMLCh* const nsUri, DOMElement *owner, DOMDocument *docOwner)
++#if _XERCES_VERSION >= 30200
++ : fNode(this, docOwner)
++#else
+ : fNode(docOwner)
++#endif
+ {
+ DOMNodeImpl *argImpl = castToNodeImpl(this);
+
+@@ -54,7 +58,13 @@ XPathNamespaceImpl::XPathNamespaceImpl(c
+ }
+
+ XPathNamespaceImpl::XPathNamespaceImpl(const XPathNamespaceImpl &other)
+- : fNode(other.fNode), uri(other.uri), prefix(other.prefix)
++#if _XERCES_VERSION >= 30200
++ : fNode(this, other.fNode),
++#else
++ : fNode(other.fNode),
++
++#endif
++ uri(other.uri), prefix(other.prefix)
+ {
+ }
+
+@@ -196,7 +206,11 @@ short XPathNamespaceImpl::com
+
+ //if it is a custom node and bigger than us we must ask it for the order
+ if(otherType > DOMXPathNamespace::XPATH_NAMESPACE_NODE) {
++#if _XERCES_VERSION >= 30200
++ DOMNodeImpl tmp(const_cast<XPathNamespaceImpl *>(this), 0);
++#else
+ DOMNodeImpl tmp(0);
++#endif
+ #if _XERCES_VERSION >= 30000
+ return tmp.reverseTreeOrderBitPattern(other->compareDocumentPosition(this));
+ #else