diff --git a/src/xercesc/internal/IGXMLScanner2.cpp b/src/xercesc/internal/IGXMLScanner2.cpp index 547ffe464bcfcc14e00a203b6f9a42e4d3e5322c..f4290e5c968062fb12f42445fbc4ec293273be15 100644 --- a/src/xercesc/internal/IGXMLScanner2.cpp +++ b/src/xercesc/internal/IGXMLScanner2.cpp @@ -285,16 +285,18 @@ IGXMLScanner::buildAttList(const RefVectorOf<KVStringPair>& providedAttrs // Its not valid for this element, so issue an error if we are // validating. // - XMLBufBid bbURI(&fBufMgr); - XMLBuffer& bufURI = bbURI.getBuffer(); - - getURIText(uriId, bufURI); - XMLBufBid bbMsg(&fBufMgr); XMLBuffer& bufMsg = bbMsg.getBuffer(); - bufMsg.append(chOpenCurly); - bufMsg.append(bufURI.getRawBuffer()); - bufMsg.append(chCloseCurly); + if (uriId != fEmptyNamespaceId) { + XMLBufBid bbURI(&fBufMgr); + XMLBuffer& bufURI = bbURI.getBuffer(); + + getURIText(uriId, bufURI); + + bufMsg.append(chOpenCurly); + bufMsg.append(bufURI.getRawBuffer()); + bufMsg.append(chCloseCurly); + } bufMsg.append(suffPtr); fValidator->emitError ( diff --git a/src/xercesc/internal/SGXMLScanner.cpp b/src/xercesc/internal/SGXMLScanner.cpp index 102e916cfd46c9fca6e6b5c73a1c6062b291fcd4..9d6e97be05f0bdc1494c98ea8703ded9888e6f45 100644 --- a/src/xercesc/internal/SGXMLScanner.cpp +++ b/src/xercesc/internal/SGXMLScanner.cpp @@ -884,7 +884,7 @@ void SGXMLScanner::scanEndTag(bool& gotData) XMLElementDecl* tempElement = topElem->fThisElement; const XMLCh* rawNameBuf = fQNameBuf.getRawBuffer(); - if ((topUri != uriId) || + if ((topUri != uriId) || (!XMLString::equals(tempElement->getBaseName(), &rawNameBuf[prefixColonPos + 1]))) { emitError @@ -2041,16 +2041,18 @@ SGXMLScanner::buildAttList(const RefVectorOf<KVStringPair>& providedAttrs // Its not valid for this element, so issue an error if we are // validating. // - XMLBufBid bbURI(&fBufMgr); - XMLBuffer& bufURI = bbURI.getBuffer(); - - getURIText(uriId, bufURI); - XMLBufBid bbMsg(&fBufMgr); XMLBuffer& bufMsg = bbMsg.getBuffer(); - bufMsg.append(chOpenCurly); - bufMsg.append(bufURI.getRawBuffer()); - bufMsg.append(chCloseCurly); + if (uriId != fEmptyNamespaceId) { + XMLBufBid bbURI(&fBufMgr); + XMLBuffer& bufURI = bbURI.getBuffer(); + + getURIText(uriId, bufURI); + + bufMsg.append(chOpenCurly); + bufMsg.append(bufURI.getRawBuffer()); + bufMsg.append(chCloseCurly); + } bufMsg.append(suffPtr); fValidator->emitError (