Author: scantor
Date: Wed Jun 21 22:48:31 2017
New Revision: 1799528
URL: http://svn.apache.org/viewvc?rev=1799528&view=rev
Log:
Port XERCESC-2070 from 3.1 branch.
Modified:
xerces/c/trunk/ (props changed)
xerces/c/trunk/src/xercesc/internal/XMLScanner.cpp
Propchange: xerces/c/trunk/
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Wed Jun 21 22:48:31 2017
@@ -1 +1 @@
-/xerces/c/branches/xerces-3.1:1662879,1662887,1662893-1662894,1663359,1663377,1726088,1747618-1747619
+/xerces/c/branches/xerces-3.1:1662879,1662887,1662893-1662894,1663359,1663377,1726088,1747618-1747620
Modified: xerces/c/trunk/src/xercesc/internal/XMLScanner.cpp
URL:
http://svn.apache.org/viewvc/xerces/c/trunk/src/xercesc/internal/XMLScanner.cpp?rev=1799528&r1=1799527&r2=1799528&view=diff
==============================================================================
--- xerces/c/trunk/src/xercesc/internal/XMLScanner.cpp (original)
+++ xerces/c/trunk/src/xercesc/internal/XMLScanner.cpp Wed Jun 21 22:48:31 2017
@@ -1270,8 +1270,15 @@ void XMLScanner::scanProlog()
if (sawDocTypeDecl) {
emitError(XMLErrs::DuplicateDocTypeDecl);
}
- scanDocTypeDecl();
- sawDocTypeDecl = true;
+
+ const char* envvar = getenv("XERCES_DISABLE_DTD");
+ if (envvar && !strcmp(envvar, "1")) {
+ emitError(XMLErrs::InvalidDocumentStructure);
+ }
+ else {
+ scanDocTypeDecl();
+ sawDocTypeDecl = true;
+ }
// if reusing grammar, this has been validated already in
first scan
// skip for performance
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]