summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTiziano Müller <dev-zero@gentoo.org>2012-05-24 19:37:01 +0000
committerTiziano Müller <dev-zero@gentoo.org>2012-05-24 19:37:01 +0000
commit1997984cdb89650406b8a4e53f2526703003db50 (patch)
tree580e0e994a6c6837297e4e75a81c8f4bfeb31c2b /dev-libs/xerces-c
parentWhitespace to shutup repoman. (diff)
downloadgentoo-2-1997984cdb89650406b8a4e53f2526703003db50.tar.gz
gentoo-2-1997984cdb89650406b8a4e53f2526703003db50.tar.bz2
gentoo-2-1997984cdb89650406b8a4e53f2526703003db50.zip
Dropped old unused versions and it's patches (fixes bug #248966).
(Portage version: 2.1.10.56/cvs/Linux x86_64)
Diffstat (limited to 'dev-libs/xerces-c')
-rw-r--r--dev-libs/xerces-c/ChangeLog9
-rw-r--r--dev-libs/xerces-c/files/3.0.1-disable-thread-tests.patch47
-rw-r--r--dev-libs/xerces-c/files/xerces-c-3.0.1-CVE-2009-2625.patch649
-rw-r--r--dev-libs/xerces-c/files/xerces-c-3.0.1-libicu.patch29
-rw-r--r--dev-libs/xerces-c/xerces-c-3.0.0-r1.ebuild90
-rw-r--r--dev-libs/xerces-c/xerces-c-3.0.0.ebuild94
-rw-r--r--dev-libs/xerces-c/xerces-c-3.0.1-r1.ebuild98
-rw-r--r--dev-libs/xerces-c/xerces-c-3.0.1.ebuild87
8 files changed, 8 insertions, 1095 deletions
diff --git a/dev-libs/xerces-c/ChangeLog b/dev-libs/xerces-c/ChangeLog
index aacfc0db827a..76135426b2aa 100644
--- a/dev-libs/xerces-c/ChangeLog
+++ b/dev-libs/xerces-c/ChangeLog
@@ -1,6 +1,13 @@
# ChangeLog for dev-libs/xerces-c
# Copyright 1999-2012 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/dev-libs/xerces-c/ChangeLog,v 1.98 2012/05/23 12:58:08 ranger Exp $
+# $Header: /var/cvsroot/gentoo-x86/dev-libs/xerces-c/ChangeLog,v 1.99 2012/05/24 19:37:01 dev-zero Exp $
+
+ 24 May 2012; Tiziano Müller <dev-zero@gentoo.org>
+ -files/3.0.1-disable-thread-tests.patch, -xerces-c-3.0.0.ebuild,
+ -xerces-c-3.0.0-r1.ebuild, -xerces-c-3.0.1.ebuild, -xerces-c-3.0.1-r1.ebuild,
+ -files/xerces-c-3.0.1-CVE-2009-2625.patch,
+ -files/xerces-c-3.0.1-libicu.patch:
+ Dropped old unused versions and it's patches (fixes bug #248966).
23 May 2012; Brent Baude <ranger@gentoo.org> xerces-c-3.1.1-r1.ebuild:
Marking xerces-c-3.1.1-r1 ppc64 for bug 409545
diff --git a/dev-libs/xerces-c/files/3.0.1-disable-thread-tests.patch b/dev-libs/xerces-c/files/3.0.1-disable-thread-tests.patch
deleted file mode 100644
index 68144cc10694..000000000000
--- a/dev-libs/xerces-c/files/3.0.1-disable-thread-tests.patch
+++ /dev/null
@@ -1,47 +0,0 @@
-diff -ru origscripts/sanityTest_ExpectedResult.log scripts/sanityTest_ExpectedResult.log
---- origscripts/sanityTest_ExpectedResult.log 2008-09-17 05:06:33.000000000 +0200
-+++ scripts/sanityTest_ExpectedResult.log 2010-01-18 19:45:39.000000000 +0100
-@@ -1146,42 +1146,7 @@
- 1Test Run Successfully
- 2Test Run Successfully
- 3Test Run Successfully
--No input XML file specified on command line.
--usage: ThreadTest [-v] [-threads nnn] [-time nnn] [-quiet] [-verbose] xmlfile...
-- -v=xxx Validation scheme [always | never | auto]. Default is AUTO.
-- -n Enable namespace processing. Defaults to off.
-- -s Enable schema processing. Defaults to off.
-- -f Enable full schema constraint checking. Defaults to off.
-- -parser=xxx Parser Type [dom | sax | sax2]. Default is SAX (SAX1).
-- -p Enable namespace prefixes. Defaults to off.
-- (Only used with -parser=sax2, ignored otherwise.)
-- -quiet Suppress periodic status display.
-- -verbose Display extra messages.
-- -reuse Retain and reuse parser. Default creates new for each parse.
-- -threads nnn Number of threads. Default is 2.
-- -time nnn Total time to run, in seconds. Default is forever.
-- -parses nnn Run for nnn parses instead of time. Default is to use time
-- -dump Dump DOM tree on error.
-- -mem Read files into memory once only, and parse them from there.
-- -gc Enable grammar caching (i.e. grammar cached and used in subsequent parses). Defaults to off.
-- -init Perform an initial parse of the file(s) before starting up the individual threads.
--
--1Test Run Successfully
--2Test Run Successfully
--3Test Run Successfully
--4Test Run Successfully
--5Test Run Successfully
--6Test Run Successfully
--7Test Run Successfully
--8Test Run Successfully
--9Test Run Successfully
--10Test Run Successfully
--11Test Run Successfully
--12Test Run Successfully
--13Test Run Successfully
--14Test Run Successfully
--15Test Run Successfully
--
-+123456789101112131415
- Usage:
- MemHandlerTest [options] <XML file | List file>
-
diff --git a/dev-libs/xerces-c/files/xerces-c-3.0.1-CVE-2009-2625.patch b/dev-libs/xerces-c/files/xerces-c-3.0.1-CVE-2009-2625.patch
deleted file mode 100644
index d3ab8ed32722..000000000000
--- a/dev-libs/xerces-c/files/xerces-c-3.0.1-CVE-2009-2625.patch
+++ /dev/null
@@ -1,649 +0,0 @@
---- xerces/c/trunk/src/xercesc/validators/DTD/DTDScanner.cpp 2009/06/03 17:26:39 781487
-+++ xerces/c/trunk/src/xercesc/validators/DTD/DTDScanner.cpp 2009/06/03 17:27:07 781488
-@@ -27,7 +27,9 @@
- #include <xercesc/util/FlagJanitor.hpp>
- #include <xercesc/util/Janitor.hpp>
- #include <xercesc/util/XMLUniDefs.hpp>
-+#include <xercesc/util/ValueStackOf.hpp>
- #include <xercesc/util/UnexpectedEOFException.hpp>
-+#include <xercesc/util/OutOfMemoryException.hpp>
- #include <xercesc/sax/InputSource.hpp>
- #include <xercesc/framework/XMLDocumentHandler.hpp>
- #include <xercesc/framework/XMLEntityHandler.hpp>
-@@ -39,7 +41,6 @@
- #include <xercesc/validators/DTD/DTDEntityDecl.hpp>
- #include <xercesc/validators/DTD/DocTypeHandler.hpp>
- #include <xercesc/validators/DTD/DTDScanner.hpp>
--#include <xercesc/util/OutOfMemoryException.hpp>
-
- XERCES_CPP_NAMESPACE_BEGIN
-
-@@ -1041,338 +1042,354 @@
- // Check for a PE ref here, but don't require spaces
- checkForPERef(false, true);
-
-- // We have to check entity nesting here
-- XMLSize_t curReader;
--
-+ ValueStackOf<XMLSize_t>* arrNestedDecl=NULL;
- //
- // We know that the caller just saw an opening parenthesis, so we need
-- // to parse until we hit the end of it, recursing for other nested
-- // parentheses we see.
-+ // to parse until we hit the end of it; if we find several parenthesis,
-+ // store them in an array to be processed later.
- //
- // We have to check for one up front, since it could be something like
- // (((a)*)) etc...
- //
- ContentSpecNode* curNode = 0;
-- if (fReaderMgr->skippedChar(chOpenParen))
-+ while(fReaderMgr->skippedChar(chOpenParen))
- {
-- curReader = fReaderMgr->getCurrentReaderNum();
-+ // to check entity nesting
-+ const XMLSize_t curReader = fReaderMgr->getCurrentReaderNum();
-+ if(arrNestedDecl==NULL)
-+ arrNestedDecl=new (fMemoryManager) ValueStackOf<XMLSize_t>(5, fMemoryManager);
-+ arrNestedDecl->push(curReader);
-
-- // Lets call ourself and get back the resulting node
-- curNode = scanChildren(elemDecl, bufToUse);
-+ // Check for a PE ref here, but don't require spaces
-+ checkForPERef(false, true);
-+ }
-
-- // If that failed, no need to go further, return failure
-- if (!curNode)
-- return 0;
-+ // We must find a leaf node here, either standalone or nested in the parenthesis
-+ if (!fReaderMgr->getName(bufToUse))
-+ {
-+ fScanner->emitError(XMLErrs::ExpectedElementName);
-+ return 0;
-+ }
-
-- if (curReader != fReaderMgr->getCurrentReaderNum() && fScanner->getValidationScheme() == XMLScanner::Val_Always)
-- fScanner->getValidator()->emitError(XMLValid::PartialMarkupInPE);
-+ //
-+ // Create a leaf node for it. If we can find the element id for
-+ // this element, then use it. Else, we have to fault in an element
-+ // decl, marked as created because of being in a content model.
-+ //
-+ XMLElementDecl* decl = fDTDGrammar->getElemDecl(fEmptyNamespaceId, 0, bufToUse.getRawBuffer(), Grammar::TOP_LEVEL_SCOPE);
-+ if (!decl)
-+ {
-+ decl = new (fGrammarPoolMemoryManager) DTDElementDecl
-+ (
-+ bufToUse.getRawBuffer()
-+ , fEmptyNamespaceId
-+ , DTDElementDecl::Any
-+ , fGrammarPoolMemoryManager
-+ );
-+ decl->setCreateReason(XMLElementDecl::InContentModel);
-+ decl->setExternalElemDeclaration(isReadingExternalEntity());
-+ fDTDGrammar->putElemDecl(decl);
- }
-- else
-+ curNode = new (fGrammarPoolMemoryManager) ContentSpecNode
-+ (
-+ decl->getElementName()
-+ , fGrammarPoolMemoryManager
-+ );
-+
-+ // Check for a PE ref here, but don't require spaces
-+ const bool gotSpaces = checkForPERef(false, true);
-+
-+ // Check for a repetition character after the leaf
-+ XMLCh repCh = fReaderMgr->peekNextChar();
-+ ContentSpecNode* tmpNode = makeRepNode(repCh, curNode, fGrammarPoolMemoryManager);
-+ if (tmpNode != curNode)
- {
-- // Not a nested paren, so it must be a leaf node
-- if (!fReaderMgr->getName(bufToUse))
-+ if (gotSpaces)
- {
-- fScanner->emitError(XMLErrs::ExpectedElementName);
-- return 0;
-+ if (fScanner->emitErrorWillThrowException(XMLErrs::UnexpectedWhitespace))
-+ {
-+ delete tmpNode;
-+ }
-+ fScanner->emitError(XMLErrs::UnexpectedWhitespace);
- }
-+ fReaderMgr->getNextChar();
-+ curNode = tmpNode;
-+ }
-+
-+ while(arrNestedDecl==NULL || !arrNestedDecl->empty())
-+ {
-+ // Check for a PE ref here, but don't require spaces
-+ checkForPERef(false, true);
-
- //
-- // Create a leaf node for it. If we can find the element id for
-- // this element, then use it. Else, we have to fault in an element
-- // decl, marked as created because of being in a content model.
-+ // Ok, the next character tells us what kind of content this particular
-+ // model this particular parentesized section is. Its either a choice if
-+ // we see ',', a sequence if we see '|', or a single leaf node if we see
-+ // a closing paren.
-+ //
-+ const XMLCh opCh = fReaderMgr->peekNextChar();
-+
-+ if ((opCh != chComma)
-+ && (opCh != chPipe)
-+ && (opCh != chCloseParen))
-+ {
-+ // Not a legal char, so delete our node and return failure
-+ delete curNode;
-+ fScanner->emitError(XMLErrs::ExpectedSeqChoiceLeaf);
-+ return 0;
-+ }
-+
- //
-- XMLElementDecl* decl = fDTDGrammar->getElemDecl(fEmptyNamespaceId, 0, bufToUse.getRawBuffer(), Grammar::TOP_LEVEL_SCOPE);
-- if (!decl)
-+ // Create the head node of the correct type. We need this to remember
-+ // the top of the local tree. If it was a single subexpr, then just
-+ // set the head node to the current node. For the others, we'll build
-+ // the tree off the second child as we move across.
-+ //
-+ ContentSpecNode* headNode = 0;
-+ ContentSpecNode::NodeTypes curType = ContentSpecNode::UnknownType;
-+ if (opCh == chComma)
- {
-- decl = new (fGrammarPoolMemoryManager) DTDElementDecl
-+ curType = ContentSpecNode::Sequence;
-+ headNode = new (fGrammarPoolMemoryManager) ContentSpecNode
- (
-- bufToUse.getRawBuffer()
-- , fEmptyNamespaceId
-- , DTDElementDecl::Any
-+ curType
-+ , curNode
-+ , 0
-+ , true
-+ , true
- , fGrammarPoolMemoryManager
- );
-- decl->setCreateReason(XMLElementDecl::InContentModel);
-- decl->setExternalElemDeclaration(isReadingExternalEntity());
-- fDTDGrammar->putElemDecl(decl);
-+ curNode = headNode;
- }
-- curNode = new (fGrammarPoolMemoryManager) ContentSpecNode
-- (
-- decl->getElementName()
-- , fGrammarPoolMemoryManager
-- );
--
-- // Check for a PE ref here, but don't require spaces
-- const bool gotSpaces = checkForPERef(false, true);
--
-- // Check for a repetition character after the leaf
-- const XMLCh repCh = fReaderMgr->peekNextChar();
-- ContentSpecNode* tmpNode = makeRepNode(repCh, curNode, fGrammarPoolMemoryManager);
-- if (tmpNode != curNode)
-+ else if (opCh == chPipe)
- {
-- if (gotSpaces)
-- {
-- if (fScanner->emitErrorWillThrowException(XMLErrs::UnexpectedWhitespace))
-- {
-- delete tmpNode;
-- }
-- fScanner->emitError(XMLErrs::UnexpectedWhitespace);
-- }
-+ curType = ContentSpecNode::Choice;
-+ headNode = new (fGrammarPoolMemoryManager) ContentSpecNode
-+ (
-+ curType
-+ , curNode
-+ , 0
-+ , true
-+ , true
-+ , fGrammarPoolMemoryManager
-+ );
-+ curNode = headNode;
-+ }
-+ else
-+ {
-+ headNode = curNode;
- fReaderMgr->getNextChar();
-- curNode = tmpNode;
- }
-- }
-
-- // Check for a PE ref here, but don't require spaces
-- checkForPERef(false, true);
--
-- //
-- // Ok, the next character tells us what kind of content this particular
-- // model this particular parentesized section is. Its either a choice if
-- // we see ',', a sequence if we see '|', or a single leaf node if we see
-- // a closing paren.
-- //
-- const XMLCh opCh = fReaderMgr->peekNextChar();
--
-- if ((opCh != chComma)
-- && (opCh != chPipe)
-- && (opCh != chCloseParen))
-- {
-- // Not a legal char, so delete our node and return failure
-- delete curNode;
-- fScanner->emitError(XMLErrs::ExpectedSeqChoiceLeaf);
-- return 0;
-- }
--
-- //
-- // Create the head node of the correct type. We need this to remember
-- // the top of the local tree. If it was a single subexpr, then just
-- // set the head node to the current node. For the others, we'll build
-- // the tree off the second child as we move across.
-- //
-- ContentSpecNode* headNode = 0;
-- ContentSpecNode::NodeTypes curType = ContentSpecNode::UnknownType;
-- if (opCh == chComma)
-- {
-- curType = ContentSpecNode::Sequence;
-- headNode = new (fGrammarPoolMemoryManager) ContentSpecNode
-- (
-- curType
-- , curNode
-- , 0
-- , true
-- , true
-- , fGrammarPoolMemoryManager
-- );
-- curNode = headNode;
-- }
-- else if (opCh == chPipe)
-- {
-- curType = ContentSpecNode::Choice;
-- headNode = new (fGrammarPoolMemoryManager) ContentSpecNode
-- (
-- curType
-- , curNode
-- , 0
-- , true
-- , true
-- , fGrammarPoolMemoryManager
-- );
-- curNode = headNode;
-- }
-- else
-- {
-- headNode = curNode;
-- fReaderMgr->getNextChar();
-- }
--
-- //
-- // If it was a sequence or choice, we just loop until we get to the
-- // end of our section, adding each new leaf or sub expression to the
-- // right child of the current node, and making that new node the current
-- // node.
-- //
-- if ((opCh == chComma) || (opCh == chPipe))
-- {
-- ContentSpecNode* lastNode = 0;
-- while (true)
-+ //
-+ // If it was a sequence or choice, we just loop until we get to the
-+ // end of our section, adding each new leaf or sub expression to the
-+ // right child of the current node, and making that new node the current
-+ // node.
-+ //
-+ if ((opCh == chComma) || (opCh == chPipe))
- {
-- //
-- // The next thing must either be another | or , character followed
-- // by another leaf or subexpression, or a closing parenthesis, or a
-- // PE ref.
-- //
-- if (fReaderMgr->lookingAtChar(chPercent))
-- {
-- checkForPERef(false, true);
-- }
-- else if (fReaderMgr->skippedSpace())
-- {
-- // Just skip whitespace
-- fReaderMgr->skipPastSpaces();
-- }
-- else if (fReaderMgr->skippedChar(chCloseParen))
-+ ContentSpecNode* lastNode = 0;
-+ while (true)
- {
- //
-- // We've hit the end of this section, so break out. But, we
-- // need to see if we left a partial sequence of choice node
-- // without a second node. If so, we have to undo that and
-- // put its left child into the right node of the previous
-- // node.
-+ // The next thing must either be another | or , character followed
-+ // by another leaf or subexpression, or a closing parenthesis, or a
-+ // PE ref.
- //
-- if ((curNode->getType() == ContentSpecNode::Choice)
-- || (curNode->getType() == ContentSpecNode::Sequence))
-+ if (fReaderMgr->lookingAtChar(chPercent))
- {
-- if (!curNode->getSecond())
-+ checkForPERef(false, true);
-+ }
-+ else if (fReaderMgr->skippedSpace())
-+ {
-+ // Just skip whitespace
-+ fReaderMgr->skipPastSpaces();
-+ }
-+ else if (fReaderMgr->skippedChar(chCloseParen))
-+ {
-+ //
-+ // We've hit the end of this section, so break out. But, we
-+ // need to see if we left a partial sequence of choice node
-+ // without a second node. If so, we have to undo that and
-+ // put its left child into the right node of the previous
-+ // node.
-+ //
-+ if ((curNode->getType() == ContentSpecNode::Choice)
-+ || (curNode->getType() == ContentSpecNode::Sequence))
- {
-- ContentSpecNode* saveFirst = curNode->orphanFirst();
-- lastNode->setSecond(saveFirst);
-- curNode = lastNode;
-+ if (!curNode->getSecond())
-+ {
-+ ContentSpecNode* saveFirst = curNode->orphanFirst();
-+ lastNode->setSecond(saveFirst);
-+ curNode = lastNode;
-+ }
- }
-+ break;
- }
-- break;
-- }
-- else if (fReaderMgr->skippedChar(opCh))
-- {
-- // Check for a PE ref here, but don't require spaces
-- checkForPERef(false, true);
--
-- if (fReaderMgr->skippedChar(chOpenParen))
-+ else if (fReaderMgr->skippedChar(opCh))
- {
-- curReader = fReaderMgr->getCurrentReaderNum();
-+ // Check for a PE ref here, but don't require spaces
-+ checkForPERef(false, true);
-
-- // Recurse to handle this new guy
-- ContentSpecNode* subNode;
-- try {
-- subNode = scanChildren(elemDecl, bufToUse);
-- }
-- catch (const XMLErrs::Codes)
-+ if (fReaderMgr->skippedChar(chOpenParen))
- {
-- delete headNode;
-- throw;
-- }
-+ const XMLSize_t curReader = fReaderMgr->getCurrentReaderNum();
-
-- // If it failed, we are done, clean up here and return failure
-- if (!subNode)
-- {
-- delete headNode;
-- return 0;
-+ // Recurse to handle this new guy
-+ ContentSpecNode* subNode;
-+ try {
-+ subNode = scanChildren(elemDecl, bufToUse);
-+ }
-+ catch (const XMLErrs::Codes)
-+ {
-+ delete headNode;
-+ throw;
-+ }
-+
-+ // If it failed, we are done, clean up here and return failure
-+ if (!subNode)
-+ {
-+ delete headNode;
-+ return 0;
-+ }
-+
-+ if (curReader != fReaderMgr->getCurrentReaderNum() && fScanner->getValidationScheme() == XMLScanner::Val_Always)
-+ fScanner->getValidator()->emitError(XMLValid::PartialMarkupInPE);
-+
-+ // Else patch it in and make it the new current
-+ ContentSpecNode* newCur = new (fGrammarPoolMemoryManager) ContentSpecNode
-+ (
-+ curType
-+ , subNode
-+ , 0
-+ , true
-+ , true
-+ , fGrammarPoolMemoryManager
-+ );
-+ curNode->setSecond(newCur);
-+ lastNode = curNode;
-+ curNode = newCur;
- }
-+ else
-+ {
-+ //
-+ // Got to be a leaf node, so get a name. If we cannot get
-+ // one, then clean up and get outa here.
-+ //
-+ if (!fReaderMgr->getName(bufToUse))
-+ {
-+ delete headNode;
-+ fScanner->emitError(XMLErrs::ExpectedElementName);
-+ return 0;
-+ }
-+
-+ //
-+ // Create a leaf node for it. If we can find the element
-+ // id for this element, then use it. Else, we have to
-+ // fault in an element decl, marked as created because
-+ // of being in a content model.
-+ //
-+ XMLElementDecl* decl = fDTDGrammar->getElemDecl(fEmptyNamespaceId, 0, bufToUse.getRawBuffer(), Grammar::TOP_LEVEL_SCOPE);
-+ if (!decl)
-+ {
-+ decl = new (fGrammarPoolMemoryManager) DTDElementDecl
-+ (
-+ bufToUse.getRawBuffer()
-+ , fEmptyNamespaceId
-+ , DTDElementDecl::Any
-+ , fGrammarPoolMemoryManager
-+ );
-+ decl->setCreateReason(XMLElementDecl::InContentModel);
-+ decl->setExternalElemDeclaration(isReadingExternalEntity());
-+ fDTDGrammar->putElemDecl(decl);
-+ }
-
-- if (curReader != fReaderMgr->getCurrentReaderNum() && fScanner->getValidationScheme() == XMLScanner::Val_Always)
-- fScanner->getValidator()->emitError(XMLValid::PartialMarkupInPE);
-+ ContentSpecNode* tmpLeaf = new (fGrammarPoolMemoryManager) ContentSpecNode
-+ (
-+ decl->getElementName()
-+ , fGrammarPoolMemoryManager
-+ );
-
-- // Else patch it in and make it the new current
-- ContentSpecNode* newCur = new (fGrammarPoolMemoryManager) ContentSpecNode
-- (
-- curType
-- , subNode
-- , 0
-- , true
-- , true
-- , fGrammarPoolMemoryManager
-- );
-- curNode->setSecond(newCur);
-- lastNode = curNode;
-- curNode = newCur;
-+ // Check for a repetition character after the leaf
-+ const XMLCh repCh = fReaderMgr->peekNextChar();
-+ ContentSpecNode* tmpLeaf2 = makeRepNode(repCh, tmpLeaf, fGrammarPoolMemoryManager);
-+ if (tmpLeaf != tmpLeaf2)
-+ fReaderMgr->getNextChar();
-+
-+ //
-+ // Create a new sequence or choice node, with the leaf
-+ // (or rep surrounding it) we just got as its first node.
-+ // Make the new node the second node of the current node,
-+ // and then make it the current node.
-+ //
-+ ContentSpecNode* newCur = new (fGrammarPoolMemoryManager) ContentSpecNode
-+ (
-+ curType
-+ , tmpLeaf2
-+ , 0
-+ , true
-+ , true
-+ , fGrammarPoolMemoryManager
-+ );
-+ curNode->setSecond(newCur);
-+ lastNode = curNode;
-+ curNode = newCur;
-+ }
- }
- else
- {
-- //
-- // Got to be a leaf node, so get a name. If we cannot get
-- // one, then clean up and get outa here.
-- //
-- if (!fReaderMgr->getName(bufToUse))
-+ // Cannot be valid
-+ delete headNode; // emitError may do a throw so need to clean-up first
-+ if (opCh == chComma)
- {
-- delete headNode;
-- fScanner->emitError(XMLErrs::ExpectedElementName);
-- return 0;
-+ fScanner->emitError(XMLErrs::ExpectedChoiceOrCloseParen);
- }
--
-- //
-- // Create a leaf node for it. If we can find the element
-- // id for this element, then use it. Else, we have to
-- // fault in an element decl, marked as created because
-- // of being in a content model.
-- //
-- XMLElementDecl* decl = fDTDGrammar->getElemDecl(fEmptyNamespaceId, 0, bufToUse.getRawBuffer(), Grammar::TOP_LEVEL_SCOPE);
-- if (!decl)
-+ else
- {
-- decl = new (fGrammarPoolMemoryManager) DTDElementDecl
-+ fScanner->emitError
- (
-- bufToUse.getRawBuffer()
-- , fEmptyNamespaceId
-- , DTDElementDecl::Any
-- , fGrammarPoolMemoryManager
-+ XMLErrs::ExpectedSeqOrCloseParen
-+ , elemDecl.getFullName()
- );
-- decl->setCreateReason(XMLElementDecl::InContentModel);
-- decl->setExternalElemDeclaration(isReadingExternalEntity());
-- fDTDGrammar->putElemDecl(decl);
-- }
-+ }
-+ return 0;
-+ }
-+ }
-+ }
-
-- ContentSpecNode* tmpLeaf = new (fGrammarPoolMemoryManager) ContentSpecNode
-- (
-- decl->getElementName()
-- , fGrammarPoolMemoryManager
-- );
-+ //
-+ // We saw the terminating parenthesis so lets check for any repetition
-+ // character, and create a node for that, making the head node the child
-+ // of it.
-+ //
-+ const XMLCh repCh = fReaderMgr->peekNextChar();
-+ curNode = makeRepNode(repCh, headNode, fGrammarPoolMemoryManager);
-+ if (curNode != headNode)
-+ fReaderMgr->getNextChar();
-
-- // Check for a repetition character after the leaf
-- const XMLCh repCh = fReaderMgr->peekNextChar();
-- ContentSpecNode* tmpLeaf2 = makeRepNode(repCh, tmpLeaf, fGrammarPoolMemoryManager);
-- if (tmpLeaf != tmpLeaf2)
-- fReaderMgr->getNextChar();
-+ // prepare for recursion
-+ if(arrNestedDecl==NULL)
-+ break;
-+ else
-+ {
-+ // If that failed, no need to go further, return failure
-+ if (!curNode)
-+ return 0;
-
-- //
-- // Create a new sequence or choice node, with the leaf
-- // (or rep surrounding it) we just got as its first node.
-- // Make the new node the second node of the current node,
-- // and then make it the current node.
-- //
-- ContentSpecNode* newCur = new (fGrammarPoolMemoryManager) ContentSpecNode
-- (
-- curType
-- , tmpLeaf2
-- , 0
-- , true
-- , true
-- , fGrammarPoolMemoryManager
-- );
-- curNode->setSecond(newCur);
-- lastNode = curNode;
-- curNode = newCur;
-- }
-- }
-- else
-+ const XMLSize_t curReader = arrNestedDecl->pop();
-+ if (curReader != fReaderMgr->getCurrentReaderNum() && fScanner->getValidationScheme() == XMLScanner::Val_Always)
-+ fScanner->getValidator()->emitError(XMLValid::PartialMarkupInPE);
-+
-+ if(arrNestedDecl->empty())
- {
-- // Cannot be valid
-- delete headNode; // emitError may do a throw so need to clean-up first
-- if (opCh == chComma)
-- {
-- fScanner->emitError(XMLErrs::ExpectedChoiceOrCloseParen);
-- }
-- else
-- {
-- fScanner->emitError
-- (
-- XMLErrs::ExpectedSeqOrCloseParen
-- , elemDecl.getFullName()
-- );
-- }
-- return 0;
-+ delete arrNestedDecl;
-+ arrNestedDecl=NULL;
- }
- }
- }
-
-- //
-- // We saw the terminating parenthesis so lets check for any repetition
-- // character, and create a node for that, making the head node the child
-- // of it.
-- //
-- XMLCh repCh = fReaderMgr->peekNextChar();
-- ContentSpecNode* retNode = makeRepNode(repCh, headNode, fGrammarPoolMemoryManager);
-- if (retNode != headNode)
-- fReaderMgr->getNextChar();
--
-- return retNode;
-+ return curNode;
- }
-
-
diff --git a/dev-libs/xerces-c/files/xerces-c-3.0.1-libicu.patch b/dev-libs/xerces-c/files/xerces-c-3.0.1-libicu.patch
deleted file mode 100644
index 263c5f8f12e3..000000000000
--- a/dev-libs/xerces-c/files/xerces-c-3.0.1-libicu.patch
+++ /dev/null
@@ -1,29 +0,0 @@
---- src/xercesc/util/MsgLoaders/ICU/resources/Makefile.in.orig 2009-09-01 20:29:37.000000000 +0200
-+++ src/xercesc/util/MsgLoaders/ICU/resources/Makefile.in 2009-09-01 20:30:21.000000000 +0200
-@@ -50,8 +50,8 @@ PKGDATA=$(ICU_PREFIX)/bin/pkgdata
-
- # Add -v if you want to see more verbose output.
- #
--PKGDATAOPTS=-d . -M '"CC=$(CC)" "CXX=$(CXX)" "AR=$(AR)" "RANLIB=$(RANLIB)" \
--"CPPFLAGS=$(CPPFLAGS)" "CFLAGS=$(CFLAGS)" "CXXFLAGS=$(CXXFLAGS)" "LDFLAGS=$(LDFLAGS)"'
-+PKGDATAOPTSSHARED=-d . -r 3.0.1
-+PKGDATAOPTSSTATIC=-d .
-
- # Resource shortname
- PKGNAME=xercesc_messages_$(INTERFACE_VER_U)
-@@ -78,13 +78,13 @@ all: xercesc_messages.lo
- xercesc_messages.lo: $(RESFILES)
- ifeq ($(BUILD_SHARED),yes)
- @rm -f $(PKGNAME)_dat.o root_res.o
-- $(PKGDATA) --name $(PKGNAME) --mode dll $(PKGDATAOPTS) $(RESLIST)
-+ $(PKGDATA) --name $(PKGNAME) --mode dll $(PKGDATAOPTSSHARED) $(RESLIST)
- mv $(PKGNAME)_dat.o $(PKGNAME)_dat-pic.o
- @if test -f root_res.o; then mv root_res.o root_res-pic.o; fi
- endif
- ifeq ($(BUILD_STATIC),yes)
- @rm -f $(PKGNAME)_dat.o $(PKGNAME)_dat.ao root_res.o root_res.ao
-- $(PKGDATA) --name $(PKGNAME) --mode static $(PKGDATAOPTS) $(RESLIST)
-+ $(PKGDATA) --name $(PKGNAME) --mode static $(PKGDATAOPTSSTATIC) $(RESLIST)
- @if test -f $(PKGNAME)_dat.ao; then mv $(PKGNAME)_dat.ao $(PKGNAME)_dat.o; fi
- @if test -f root_res.ao; then mv root_res.ao root_res.o; fi
- endif
diff --git a/dev-libs/xerces-c/xerces-c-3.0.0-r1.ebuild b/dev-libs/xerces-c/xerces-c-3.0.0-r1.ebuild
deleted file mode 100644
index 74695aff15ab..000000000000
--- a/dev-libs/xerces-c/xerces-c-3.0.0-r1.ebuild
+++ /dev/null
@@ -1,90 +0,0 @@
-# Copyright 1999-2008 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/dev-libs/xerces-c/xerces-c-3.0.0-r1.ebuild,v 1.9 2008/12/14 12:43:46 maekke Exp $
-
-inherit eutils
-
-DESCRIPTION="A validating XML parser written in a portable subset of C++."
-HOMEPAGE="http://xerces.apache.org/xerces-c/"
-SRC_URI="mirror://apache/xerces/c/3/sources/${P}.tar.gz"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="alpha amd64 ~hppa ppc ppc64 sparc x86 ~x86-fbsd"
-IUSE="curl debug doc iconv icu libwww threads elibc_Darwin elibc_FreeBSD"
-
-RDEPEND="icu? ( dev-libs/icu )
- curl? ( net-misc/curl )
- libwww? ( net-libs/libwww )
- virtual/libiconv"
-DEPEND="${RDEPEND}
- doc? ( app-doc/doxygen )"
-
-pkg_setup() {
- export ICUROOT="/usr"
-
- if use iconv && use icu ; then
- ewarn "This package can use iconv or icu for loading messages"
- ewarn "and transcoding, but not both. ICU will precede."
- fi
-}
-
-src_unpack() {
- unpack ${A}
- cd "${S}"
-
- sed -i \
- -e 's|$(prefix)/msg|$(DESTDIR)/$(prefix)/share/xerces-c/msg|' \
- src/xercesc/util/MsgLoaders/MsgCatalog/Makefile.in || die "sed failed"
-}
-
-src_compile() {
- local mloader="inmemory"
- use iconv && mloader="iconv"
- use icu && mloader="icu"
-
- local transcoder="gnuiconv"
- use elibc_FreeBSD && transcoder="iconv"
- use elibc_Darwin && transcoder="macosunicodeconverter"
- use icu && transcoder="icu"
-
- # 'cfurl' is only available on OSX and 'socket' isn't supposed to work.
- # But the docs aren't clear about it, so we would need some testing...
- local netaccessor="socket"
- use elibc_Darwin && netaccessor="cfurl"
- use libwww && netaccessor="libwww"
- use curl && netaccessor="curl"
-
- econf \
- $(use_enable debug) \
- $(use_enable threads) \
- --enable-msgloader-${mloader} \
- --enable-netaccessor-${netaccessor} \
- --enable-transcoder-${transcoder} \
- || die "econf failed"
-
- emake || die "emake failed"
-
- if use doc ; then
- cd "${S}/doc"
- doxygen || die "making docs failed"
- fi
-}
-
-src_install () {
- emake DESTDIR="${D}" install || die "emake failed"
-
- cd "${S}"
- doenvd "${FILESDIR}/50xerces-c"
-
- if use doc; then
- insinto /usr/share/doc/${PF}
- rm -rf samples/config* samples/Makefile* samples/runConfigure \
- samples/install-sh samples/*/Makefile* samples/.libs
- rm samples/*
- doins -r samples
- dohtml -r doc/html/*
- fi
-
- dodoc CREDITS KEYS NOTICE README version.incl
-}
diff --git a/dev-libs/xerces-c/xerces-c-3.0.0.ebuild b/dev-libs/xerces-c/xerces-c-3.0.0.ebuild
deleted file mode 100644
index a752517852df..000000000000
--- a/dev-libs/xerces-c/xerces-c-3.0.0.ebuild
+++ /dev/null
@@ -1,94 +0,0 @@
-# Copyright 1999-2008 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/dev-libs/xerces-c/xerces-c-3.0.0.ebuild,v 1.3 2008/10/18 09:30:53 griffon26 Exp $
-
-EAPI="2"
-
-inherit eutils
-
-DESCRIPTION="A validating XML parser written in a portable subset of C++."
-HOMEPAGE="http://xerces.apache.org/xerces-c/"
-SRC_URI="mirror://apache/xerces/c/3/sources/${P}.tar.gz"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="~alpha ~amd64 ~hppa ~ppc ~ppc64 ~sparc ~x86 ~x86-fbsd"
-IUSE="curl debug doc iconv icu libwww +threads elibc_Darwin elibc_FreeBSD"
-
-RDEPEND="icu? ( dev-libs/icu )
- curl? ( net-misc/curl )
- libwww? ( net-libs/libwww )
- virtual/libiconv"
-DEPEND="${RDEPEND}
- doc? ( app-doc/doxygen )"
-
-S=${WORKDIR}/${P}
-
-pkg_setup() {
- export ICUROOT="/usr"
-
- if use iconv && use icu ; then
- ewarn "This package can use iconv or icu for loading messages"
- ewarn "and transcoding, but not both. ICU will precede."
- fi
-}
-
-src_prepare() {
- # disable building broken samples
- sed -i \
- -e 's|src tests samples|src tests|' \
- Makefile.in || die "sed failed"
-
- sed -i \
- -e 's|$(prefix)/msg|$(DESTDIR)/$(prefix)/share/xerces-c/msg|' \
- src/xercesc/util/MsgLoaders/MsgCatalog/Makefile.in || die "sed failed"
-}
-
-src_compile() {
- local mloader="inmemory"
- use iconv && mloader="iconv"
- use icu && mloader="icu"
-
- local transcoder="gnuiconv"
- use elibc_FreeBSD && transcoder="iconv"
- use elibc_Darwin && transcoder="macosunicodeconverter"
- use icu && transcoder="icu"
-
- # 'cfurl' is only available on OSX and 'socket' isn't supposed to work.
- # But the docs aren't clear about it, so we would need some testing...
- local netaccessor="socket"
- use elibc_Darwin && netaccessor="cfurl"
- use libwww && netaccessor="libwww"
- use curl && netaccessor="curl"
-
- econf \
- $(use_enable debug) \
- $(use_enable threads) \
- --enable-msgloader-${mloader} \
- --enable-netaccessor-${netaccessor} \
- --enable-transcoder-${transcoder} \
- || die "econf failed"
-
- emake || die "emake failed"
-
- if use doc ; then
- cd "${S}/doc"
- doxygen || die "making docs failed"
- fi
-}
-
-src_install () {
- emake DESTDIR="${D}" install || die "emake failed"
-
- cd "${S}"
- doenvd "${FILESDIR}/50xerces-c"
-
- if use doc; then
- insinto /usr/share/doc/${PF}
- rm -rf samples/config* samples/Makefile* samples/runConfigure samples/install-sh samples/*/Makefile*
- doins -r samples
- dohtml -r doc/html/*
- fi
-
- dodoc CREDITS KEYS NOTICE README version.incl
-}
diff --git a/dev-libs/xerces-c/xerces-c-3.0.1-r1.ebuild b/dev-libs/xerces-c/xerces-c-3.0.1-r1.ebuild
deleted file mode 100644
index 95886e2c7726..000000000000
--- a/dev-libs/xerces-c/xerces-c-3.0.1-r1.ebuild
+++ /dev/null
@@ -1,98 +0,0 @@
-# Copyright 1999-2010 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/dev-libs/xerces-c/xerces-c-3.0.1-r1.ebuild,v 1.8 2010/06/18 18:54:58 pacho Exp $
-
-EAPI="2"
-
-inherit eutils
-
-DESCRIPTION="A validating XML parser written in a portable subset of C++."
-HOMEPAGE="http://xerces.apache.org/xerces-c/"
-SRC_URI="mirror://apache/xerces/c/3/sources/${P}.tar.gz"
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="alpha amd64 hppa ppc ~ppc64 sparc x86 ~x86-fbsd"
-IUSE="curl debug doc iconv icu libwww test threads elibc_Darwin elibc_FreeBSD"
-
-RDEPEND="icu? ( >=dev-libs/icu-4.2 )
- curl? ( net-misc/curl )
- libwww? ( net-libs/libwww )
- virtual/libiconv"
-DEPEND="${RDEPEND}
- doc? ( app-doc/doxygen )"
-
-pkg_setup() {
- export ICUROOT="/usr"
-
- if use iconv && use icu ; then
- ewarn "This package can use iconv or icu for loading messages"
- ewarn "and transcoding, but not both. ICU will precede."
- fi
-}
-
-src_prepare() {
- sed -i \
- -e 's|$(prefix)/msg|$(DESTDIR)/$(prefix)/share/xerces-c/msg|' \
- src/xercesc/util/MsgLoaders/MsgCatalog/Makefile.in || die "sed failed"
-
- epatch \
- "${FILESDIR}/${P}-CVE-2009-2625.patch" \
- "${FILESDIR}/${P}-libicu.patch"
-
- if use test && ! use threads ; then
- epatch "${FILESDIR}/${PV}-disable-thread-tests.patch"
- sed -i \
- -e 's|ThreadTest$(EXEEXT) XSerializerTest$(EXEEXT)|XSerializerTest$(EXEEXT)|g' \
- tests/Makefile.in || die "sed failed"
- fi
-}
-
-src_configure() {
- local mloader="inmemory"
- use iconv && mloader="iconv"
- use icu && mloader="icu"
-
- local transcoder="gnuiconv"
- use elibc_FreeBSD && transcoder="iconv"
- use elibc_Darwin && transcoder="macosunicodeconverter"
- use icu && transcoder="icu"
-
- # 'cfurl' is only available on OSX and 'socket' isn't supposed to work.
- # But the docs aren't clear about it, so we would need some testing...
- local netaccessor="socket"
- use elibc_Darwin && netaccessor="cfurl"
- use libwww && netaccessor="libwww"
- use curl && netaccessor="curl"
-
- econf \
- $(use_enable debug) \
- $(use_enable threads) \
- --enable-msgloader-${mloader} \
- --enable-netaccessor-${netaccessor} \
- --enable-transcoder-${transcoder}
-}
-
-src_compile() {
- default
-
- if use doc ; then
- cd "${S}/doc"
- doxygen || die "making docs failed"
- fi
-}
-
-src_install () {
- emake DESTDIR="${D}" install || die "emake failed"
-
- cd "${S}"
- doenvd "${FILESDIR}/50xerces-c"
-
- if use doc; then
- insinto /usr/share/doc/${PF}
- rm -rf samples/Makefile* samples/runConfigure samples/src/*/Makefile* samples/.libs
- doins -r samples
- dohtml -r doc/html/*
- fi
-
- dodoc CREDITS KEYS NOTICE README version.incl
-}
diff --git a/dev-libs/xerces-c/xerces-c-3.0.1.ebuild b/dev-libs/xerces-c/xerces-c-3.0.1.ebuild
deleted file mode 100644
index 329e49bcd7f1..000000000000
--- a/dev-libs/xerces-c/xerces-c-3.0.1.ebuild
+++ /dev/null
@@ -1,87 +0,0 @@
-# Copyright 1999-2009 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/dev-libs/xerces-c/xerces-c-3.0.1.ebuild,v 1.1 2009/03/02 08:58:57 dev-zero Exp $
-
-EAPI="2"
-
-inherit eutils
-
-DESCRIPTION="A validating XML parser written in a portable subset of C++."
-HOMEPAGE="http://xerces.apache.org/xerces-c/"
-SRC_URI="mirror://apache/xerces/c/3/sources/${P}.tar.gz"
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="~alpha ~amd64 ~hppa ~ppc ~ppc64 ~sparc ~x86 ~x86-fbsd"
-IUSE="curl debug doc iconv icu libwww threads elibc_Darwin elibc_FreeBSD"
-
-RDEPEND="icu? ( dev-libs/icu )
- curl? ( net-misc/curl )
- libwww? ( net-libs/libwww )
- virtual/libiconv"
-DEPEND="${RDEPEND}
- doc? ( app-doc/doxygen )"
-
-pkg_setup() {
- export ICUROOT="/usr"
-
- if use iconv && use icu ; then
- ewarn "This package can use iconv or icu for loading messages"
- ewarn "and transcoding, but not both. ICU will precede."
- fi
-}
-
-src_prepare() {
- sed -i \
- -e 's|$(prefix)/msg|$(DESTDIR)/$(prefix)/share/xerces-c/msg|' \
- src/xercesc/util/MsgLoaders/MsgCatalog/Makefile.in || die "sed failed"
-}
-
-src_configure() {
- local mloader="inmemory"
- use iconv && mloader="iconv"
- use icu && mloader="icu"
-
- local transcoder="gnuiconv"
- use elibc_FreeBSD && transcoder="iconv"
- use elibc_Darwin && transcoder="macosunicodeconverter"
- use icu && transcoder="icu"
-
- # 'cfurl' is only available on OSX and 'socket' isn't supposed to work.
- # But the docs aren't clear about it, so we would need some testing...
- local netaccessor="socket"
- use elibc_Darwin && netaccessor="cfurl"
- use libwww && netaccessor="libwww"
- use curl && netaccessor="curl"
-
- econf \
- $(use_enable debug) \
- $(use_enable threads) \
- --enable-msgloader-${mloader} \
- --enable-netaccessor-${netaccessor} \
- --enable-transcoder-${transcoder}
-}
-
-src_compile() {
- default
-
- if use doc ; then
- cd "${S}/doc"
- doxygen || die "making docs failed"
- fi
-}
-
-src_install () {
- emake DESTDIR="${D}" install || die "emake failed"
-
- cd "${S}"
- doenvd "${FILESDIR}/50xerces-c"
-
- if use doc; then
- insinto /usr/share/doc/${PF}
- rm -rf samples/Makefile* samples/runConfigure samples/src/*/Makefile* samples/.libs
- doins -r samples
- dohtml -r doc/html/*
- fi
-
- dodoc CREDITS KEYS NOTICE README version.incl
-}