[packages/xqilla] - added patches for compatibility with xerces 3.2 - release 2

qboosh qboosh at pld-linux.org
Fri Nov 24 19:43:18 CET 2017


commit 5beb16868c67a6941cd7b6d6fc3231f0c639834d
Author: Jakub Bogusz <qboosh at pld-linux.org>
Date:   Fri Nov 24 19:44:18 2017 +0100

    - added patches for compatibility with xerces 3.2
    - release 2

 xqilla-xerces-1.patch | 14 ++++++++++++++
 xqilla-xerces-2.patch | 41 +++++++++++++++++++++++++++++++++++++++++
 xqilla.spec           | 10 +++++++++-
 3 files changed, 64 insertions(+), 1 deletion(-)
---
diff --git a/xqilla.spec b/xqilla.spec
index 7fcd03c..7c4cd2f 100644
--- a/xqilla.spec
+++ b/xqilla.spec
@@ -6,13 +6,18 @@ Summary:	XQilla - C++ implementation of XQuery and XPath 2.0 based on Xerces-C
 Summary(pl.UTF-8):	XQilla - implementacja C++ XQuary i XPath 2.0 oparta na bibliotece Xerces-C
 Name:		xqilla
 Version:	2.3.3
-Release:	1
+Release:	2
 License:	Apache v2.0
 Group:		Libraries
 Source0:	http://downloads.sourceforge.net/xqilla/XQilla-%{version}.tar.gz
 # Source0-md5:	8ece20348687b6529bb934c17067803c
 Patch0:		%{name}-link.patch
 Patch1:		%{name}-soname.patch
+# https://sourceforge.net/p/xqilla/bugs/48/
+# https://sourceforge.net/p/xqilla/bugs/48/attachment/patch-src_dom-api_impl_XPathDocumentImpl.cpp
+Patch2:		%{name}-xerces-1.patch
+# https://sourceforge.net/p/xqilla/bugs/48/attachment/patch-src_dom-api_impl_XPathNamespaceImpl.cpp
+Patch3:		%{name}-xerces-2.patch
 URL:		http://xqilla.sourceforge.net/
 BuildRequires:	autoconf >= 2.59
 BuildRequires:	automake
@@ -77,6 +82,8 @@ Dokumentacja API biblioteki XQilla.
 %setup -q -n XQilla-%{version}
 %patch0 -p1
 %patch1 -p1
+%patch2 -p0
+%patch3 -p0
 
 %build
 %{__libtoolize}
@@ -92,6 +99,7 @@ Dokumentacja API biblioteki XQilla.
 
 %install
 rm -rf $RPM_BUILD_ROOT
+
 %{__make} install \
 	DESTDIR=$RPM_BUILD_ROOT
 
diff --git a/xqilla-xerces-1.patch b/xqilla-xerces-1.patch
new file mode 100644
index 0000000..27839ca
--- /dev/null
+++ b/xqilla-xerces-1.patch
@@ -0,0 +1,14 @@
+--- src/dom-api/impl/XPathDocumentImpl.cpp.orig	2017-09-03 19:24:35 UTC
++++ 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());
+ 
diff --git a/xqilla-xerces-2.patch b/xqilla-xerces-2.patch
new file mode 100644
index 0000000..041e925
--- /dev/null
+++ b/xqilla-xerces-2.patch
@@ -0,0 +1,41 @@
+--- src/dom-api/impl/XPathNamespaceImpl.cpp.orig	2017-09-03 20:26:37 UTC
++++ 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
================================================================

---- gitweb:

http://git.pld-linux.org/gitweb.cgi/packages/xqilla.git/commitdiff/5beb16868c67a6941cd7b6d6fc3231f0c639834d



More information about the pld-cvs-commit mailing list