dbertoni 00/05/05 08:08:07
Modified: c/src/XercesParserLiaison XercesDocumentBridge.cpp
Log:
Made GetElementById() more efficient when the element does not exist.
Revision Changes Path
1.5 +5 -5
xml-xalan/c/src/XercesParserLiaison/XercesDocumentBridge.cpp
Index: XercesDocumentBridge.cpp
===================================================================
RCS file:
/home/cvs/xml-xalan/c/src/XercesParserLiaison/XercesDocumentBridge.cpp,v
retrieving revision 1.4
retrieving revision 1.5
diff -u -r1.4 -r1.5
--- XercesDocumentBridge.cpp 2000/05/03 22:25:34 1.4
+++ XercesDocumentBridge.cpp 2000/05/05 15:08:07 1.5
@@ -1031,16 +1031,16 @@
// const...
#if defined(XERCES_NO_MUTABLE)
const DOM_Node
theXercesNode((DOM_Document&)m_xercesDocument).getElementById(elementId));
-
#else
const DOM_Node
theXercesNode(m_xercesDocument.getElementById(elementId));
-
#endif
- assert(mapNode(theXercesNode) == 0 ||
- mapNode(theXercesNode)->getNodeType() ==
XalanNode::ELEMENT_NODE);
+ assert(theXercesNode.isNull() == true ||
+ (mapNode(theXercesNode) != 0 &&
+ mapNode(theXercesNode)->getNodeType() ==
XalanNode::ELEMENT_NODE));
- return static_cast<XalanElement*>(mapNode(theXercesNode));
+ return theXercesNode.isNull() == true ? 0 :
+
static_cast<XalanElement*>(mapNode(theXercesNode));
}