Author: amassari
Date: Wed Aug 23 02:39:36 2006
New Revision: 433995
URL: http://svn.apache.org/viewvc?rev=433995&view=rev
Log:
DOMLSParserImpl::loadGrammar should not release the previously loaded
DOMDocument (jira#1626)
Modified:
xerces/c/branches/xerces-2.7/src/xercesc/parsers/DOMBuilderImpl.cpp
xerces/c/branches/xerces-2.7/src/xercesc/parsers/XercesDOMParser.cpp
Modified: xerces/c/branches/xerces-2.7/src/xercesc/parsers/DOMBuilderImpl.cpp
URL:
http://svn.apache.org/viewvc/xerces/c/branches/xerces-2.7/src/xercesc/parsers/DOMBuilderImpl.cpp?rev=433995&r1=433994&r2=433995&view=diff
==============================================================================
--- xerces/c/branches/xerces-2.7/src/xercesc/parsers/DOMBuilderImpl.cpp
(original)
+++ xerces/c/branches/xerces-2.7/src/xercesc/parsers/DOMBuilderImpl.cpp Wed Aug
23 02:39:36 2006
@@ -628,11 +628,6 @@
if (grammarType == Grammar::DTDGrammarType)
getScanner()->setDocTypeHandler(0);
grammar = getScanner()->loadGrammar(systemId, grammarType, toCache);
-
- // Release DOM tree - DTD
- DOMDocument* doc = adoptDocument();
- if (doc)
- doc->release();
}
catch(const OutOfMemoryException&)
{
@@ -662,11 +657,6 @@
if (grammarType == Grammar::DTDGrammarType)
getScanner()->setDocTypeHandler(0);
grammar = getScanner()->loadGrammar(systemId, grammarType, toCache);
-
- // Release DOM tree - DTD
- DOMDocument* doc = adoptDocument();
- if (doc)
- doc->release();
}
catch(const OutOfMemoryException&)
{
@@ -692,17 +682,11 @@
try
{
- Wrapper4DOMInputSource isWrapper((DOMInputSource*) &source, false,
getMemoryManager());
-
setParseInProgress(true);
if (grammarType == Grammar::DTDGrammarType)
getScanner()->setDocTypeHandler(0);
+ Wrapper4DOMInputSource isWrapper((DOMInputSource*) &source, false,
getMemoryManager());
grammar = getScanner()->loadGrammar(isWrapper, grammarType, toCache);
-
- // Release DOM tree - DTD
- DOMDocument* doc = adoptDocument();
- if (doc)
- doc->release();
}
catch(const OutOfMemoryException&)
{
Modified: xerces/c/branches/xerces-2.7/src/xercesc/parsers/XercesDOMParser.cpp
URL:
http://svn.apache.org/viewvc/xerces/c/branches/xerces-2.7/src/xercesc/parsers/XercesDOMParser.cpp?rev=433995&r1=433994&r2=433995&view=diff
==============================================================================
--- xerces/c/branches/xerces-2.7/src/xercesc/parsers/XercesDOMParser.cpp
(original)
+++ xerces/c/branches/xerces-2.7/src/xercesc/parsers/XercesDOMParser.cpp Wed
Aug 23 02:39:36 2006
@@ -332,9 +332,6 @@
if (grammarType == Grammar::DTDGrammarType)
getScanner()->setDocTypeHandler(0);
grammar = getScanner()->loadGrammar(source, grammarType, toCache);
- if (grammarType == Grammar::DTDGrammarType)
- getScanner()->setDocTypeHandler(this);
- setParseInProgress(false);
}
catch(const OutOfMemoryException&)
{
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]