tng 2002/11/14 14:34:11
Modified: c/src/xercesc/validators/DTD DTDScanner.cpp
Log:
[Bug 14265] Access violation with Null systemId/publicId in DTDScanner
Revision Changes Path
1.16 +15 -6 xml-xerces/c/src/xercesc/validators/DTD/DTDScanner.cpp
Index: DTDScanner.cpp
===================================================================
RCS file: /home/cvs/xml-xerces/c/src/xercesc/validators/DTD/DTDScanner.cpp,v
retrieving revision 1.15
retrieving revision 1.16
diff -u -r1.15 -r1.16
--- DTDScanner.cpp 5 Nov 2002 21:40:36 -0000 1.15
+++ DTDScanner.cpp 14 Nov 2002 22:34:11 -0000 1.16
@@ -56,6 +56,9 @@
/*
* $Log$
+ * Revision 1.16 2002/11/14 22:34:11 tng
+ * [Bug 14265] Access violation with Null systemId/publicId in DTDScanner
+ *
* Revision 1.15 2002/11/05 21:40:36 tng
* Oasis test fix:
* 1. Should check if content model allow character for CDataSection case
@@ -2303,9 +2306,9 @@
// Fill in the id fields of the decl with the info we got
const XMLCh* publicId = bbPubId.getRawBuffer();
const XMLCh* systemId = bbSysId.getRawBuffer();
- decl.setPublicId((*publicId) ? publicId : 0);
- decl.setSystemId((*systemId) ? systemId : 0);
- decl.setBaseURI((*lastInfo.systemId) ? lastInfo.systemId : 0);
+ decl.setPublicId((publicId && *publicId) ? publicId : 0);
+ decl.setSystemId((systemId && *systemId) ? systemId : 0);
+ decl.setBaseURI((lastInfo.systemId && *lastInfo.systemId) ? lastInfo.systemId :
0);
// If its a PE decl, we are done
bool gotSpaces = checkForPERef(false, false, true);
@@ -3416,9 +3419,9 @@
decl = new XMLNotationDecl
(
bbName.getRawBuffer()
- , (*publicId) ? publicId : 0
- , (*systemId) ? systemId : 0
- , (*lastInfo.systemId) ? lastInfo.systemId : 0
+ , (publicId && *publicId) ? publicId : 0
+ , (systemId && *systemId) ? systemId : 0
+ , (lastInfo.systemId && *lastInfo.systemId) ? lastInfo.systemId : 0
);
fDTDGrammar->putNotationDecl(decl);
}
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]