Fixed a crash

This commit is contained in:
Zane U. Ji 2013-10-15 19:19:40 +08:00
parent 8d041e9433
commit af3e0d751a
1 changed files with 8 additions and 2 deletions

View File

@ -69,7 +69,13 @@ InputSource *XercesCatalogResolver::resolveEntity (
#endif
*/
if ( publicID == NULL || *publicID == '\0' )
return NULL;
char *narrowPublicId = XMLString::transcode ( publicID );
if ( narrowPublicId == NULL )
return NULL;
std::string resolved;
resolved = lookupPublicId ( narrowPublicId );
@ -79,8 +85,8 @@ InputSource *XercesCatalogResolver::resolveEntity (
return NULL;
XMLCh *wideResolved = XMLString::transcode ( resolved.c_str() );
InputSource *source = (InputSource *)new LocalFileInputSource ( wideResolved );
InputSource *source = (InputSource *)new LocalFileInputSource ( wideResolved );
XMLString::release ( &wideResolved );
return source;