neilg 2003/01/16 09:10:10 Modified: java/src/org/apache/xerces/impl XMLEntityManager.java java/src/org/apache/xerces/impl/dtd XMLDTDLoader.java Log: make DTD preparsing work again. Revision Changes Path 1.57 +10 -1 xml-xerces/java/src/org/apache/xerces/impl/XMLEntityManager.java Index: XMLEntityManager.java =================================================================== RCS file: /home/cvs/xml-xerces/java/src/org/apache/xerces/impl/XMLEntityManager.java,v retrieving revision 1.56 retrieving revision 1.57 diff -u -r1.56 -r1.57 --- XMLEntityManager.java 13 Jan 2003 22:21:47 -0000 1.56 +++ XMLEntityManager.java 16 Jan 2003 17:10:10 -0000 1.57 @@ -1199,7 +1199,16 @@ catch (XMLConfigurationException e) { fSecurityManager = null; } + + // reset general state + reset(); + } // reset(XMLComponentManager) + + // reset general state. Should not be called other than by + // a class acting as a component manager but not + // implementing that interface for whatever reason. + public void reset() { fEntityExpansionLimit = (fSecurityManager != null)?fSecurityManager.getEntityExpansionLimit():0; // initialize state 1.6 +9 -3 xml-xerces/java/src/org/apache/xerces/impl/dtd/XMLDTDLoader.java Index: XMLDTDLoader.java =================================================================== RCS file: /home/cvs/xml-xerces/java/src/org/apache/xerces/impl/dtd/XMLDTDLoader.java,v retrieving revision 1.5 retrieving revision 1.6 diff -u -r1.5 -r1.6 --- XMLDTDLoader.java 16 Aug 2002 21:18:52 -0000 1.5 +++ XMLDTDLoader.java 16 Jan 2003 17:10:10 -0000 1.6 @@ -176,7 +176,6 @@ fDTDScanner = new XMLDTDScannerImpl(fSymbolTable, fErrorReporter, fEntityManager); fDTDScanner.setDTDHandler(this); fDTDScanner.setDTDContentModelHandler(this); - fEntityManager.setProperty(ERROR_REPORTER, fErrorReporter); reset(); } // init(SymbolTable, XMLGrammarPool, XMLErrorReporter, XMLEntityResolver) @@ -268,6 +267,7 @@ } else if(propertyId.equals( ERROR_REPORTER)) { fErrorReporter = (XMLErrorReporter)value; fDTDScanner.setProperty(propertyId, value); + fEntityManager.setProperty(propertyId, value); } else if(propertyId.equals( ERROR_HANDLER)) { fErrorReporter.setProperty(propertyId, value); } else if(propertyId.equals( ENTITY_RESOLVER)) { @@ -357,7 +357,6 @@ public Grammar loadGrammar(XMLInputSource source) throws IOException, XNIException { reset(); - fDTDScanner.reset(); fDTDGrammar = new DTDGrammar(fSymbolTable, new XMLDTDDescription(source.getPublicId(), source.getSystemId(), source.getBaseSystemId(), fEntityManager.expandSystemId(source.getSystemId()), null)); fGrammarBucket = new DTDGrammarBucket(); fGrammarBucket.setStandalone(false); @@ -377,5 +376,12 @@ } return fDTDGrammar; } // loadGrammar(XMLInputSource): Grammar + + // reset all the components that we rely upon + protected void reset() { + super.reset(); + fDTDScanner.reset(); + fEntityManager.reset(); + } } // class XMLDTDLoader
--------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]