X-Git-Url: http://www.project-moonshot.org/gitweb/?a=blobdiff_plain;f=xmltooling%2FAbstractComplexElement.cpp;h=a8e68ef7512266a8004099305a49bbb08bb4ff44;hb=990b41af1cefa4f68b2350b94330d8eafc6a56ee;hp=9c7a276d0fe43128c08d83eb9bce818b8cc6e2eb;hpb=fb0b932235484e41580e8e8ae7b7e36b02168414;p=shibboleth%2Fcpp-xmltooling.git diff --git a/xmltooling/AbstractComplexElement.cpp b/xmltooling/AbstractComplexElement.cpp index 9c7a276..a8e68ef 100644 --- a/xmltooling/AbstractComplexElement.cpp +++ b/xmltooling/AbstractComplexElement.cpp @@ -54,10 +54,21 @@ AbstractComplexElement::AbstractComplexElement(const AbstractComplexElement& src } AbstractComplexElement::~AbstractComplexElement() { +#ifdef XMLTOOLING_XERCESC_HAS_XMLBYTE_RELEASE + static void (*release)(XMLCh**) = &XMLString::release; +#else static void (*release)(XMLCh**,MemoryManager*) = &XMLString::release; +#endif for_each(m_children.begin(), m_children.end(), cleanup()); - for_each(m_text.begin(), m_text.end(), lambda::bind(release, &_1, XMLPlatformUtils::fgMemoryManager)); + for_each(m_text.begin(), m_text.end(), + lambda::bind( + release, &_1 +#ifndef XMLTOOLING_XERCESC_HAS_XMLBYTE_RELEASE + ,XMLPlatformUtils::fgMemoryManager +#endif + ) + ); } bool AbstractComplexElement::hasChildren() const