pkgsrc/textproc/xqilla/patches/patch-src_dom-api_impl_XPathNamespaceImpl.cpp
wiz 5123a635f0 xqilla: update to 2.3.3.
version 2.3.3 (2015.07.07):
	* Fixed a localization bug parsing floating point numbers.
	* Added Visual Studio 2012 projects.
	* Added Visual Studio 2008 projects.
	* Removed Visual Studio 2005 and 2003 projects.
	* Modified to build against Xerces-C 3.1.3.

version 2.3.2 (2015.07.07):
	* XQilla can now be built with Visual Studios 2013.

version 2.3.1 (2015.05.18):
	* Modified to build against Xerces-C 3.1.2.
	* Added Visual Studio 2010 projects.
	* Fixed a bug that could cause incorrect query results when combining
	  nested expressions and functions.
	* Fixed a crash that could happen when XQilla is built with Visual
	  Studio 2010 or higher.

version 2.3.0 (2011.09.09):
	* Added support for XQuery 3.0 version declarations.
	* Updated to support XQuery 3.0 higher order functions, including
	  partial function application, function coercion, and function item
	  SequenceType checking.
	* Implemented XQuery 3.0 FLWOR clause ordering.
	* Implemented XQuery 3.0 FLWOR count clause.
	* Implemented XQuery 3.0 extended typeswitch syntax.
	* Implemented XQuery 3.0 namespace test and constructor.
	* Implemented XQuery 3.0 private functions.
	* Updated to the latest W3C XQuery Full Text syntax.
	* Implemented Unicode word bounding and sentence bounding for XQuery
	  Full Text tokenization.
	* Implemented XQuery Full Text case options.
	* Implemented XQuery 1.0 second edition semantics for module import.
	* Added the xqilla:explain() function to return the query plan of an
	  expression.
	* Added xqilla:words() and xqilla:sentences() to perform Unicode word
	  and sentance boundary detection.
	* Added xqilla:drop().
	* Rewrote a number of the built-in XQuery functions in XQuery itself.
	* Implemented constant time indexing into materialized sequences.
	* Improved the efficiency of the tail call optimization code.
	* Optimized boolean operators.
	* Optimized DOMDocument::evaluate() calls.
	* Fixed various bugs in static typing.
	* Fixed various memory leaks in the DOM 3 API, and regular expressions.
	* Fixed a bug that caused a crash when using huge integers.
	* Modified to build against Xerces-C 3.1.1
	* Added Visual Studio 2010 support.
	* Build fix for AIX 5.3.
	* Build fix for the clang++ compiler.
	* Build fix for GCC 4.6.
2017-10-01 09:45:50 +00:00

48 lines
1.6 KiB
C++

$NetBSD: patch-src_dom-api_impl_XPathNamespaceImpl.cpp,v 1.1 2017/10/01 09:45:50 wiz Exp $
Xerces-C 3.2.0 removed castToNode (which relied on undefined
behaviour) with a cleaner way of getting information about a node's
containing node: a new fContainingNode member.
https://sourceforge.net/p/xqilla/bugs/48/
--- src/dom-api/impl/XPathNamespaceImpl.cpp.orig 2015-05-18 17:39:00.000000000 +0000
+++ 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