/**\r
* @see DOMCachingXMLObject::setDocument()\r
*/\r
- DOMDocument* setDocument(DOMDocument* doc) {\r
- DOMDocument* ret=m_document;\r
+ void setDocument(DOMDocument* doc) {\r
+ if (m_document)\r
+ m_document->release();\r
m_document=doc;\r
- return ret;\r
}\r
\r
/**\r
XMLCh* newString = XMLString::replicate(newValue);\r
XMLString::trim(newString);\r
\r
- if (oldValue && !newValue || !oldValue && newValue || XMLString::compareString(oldValue,newValue))\r
+ if (!XMLString::equals(oldValue,newValue))\r
releaseThisandParentDOM();\r
\r
return newString;\r
* @param namespaceURI the namespace the element is in\r
* @param elementLocalName the local name of the XML element this Object represents\r
*/\r
- AbstractDOMCachingXMLObject(const XMLCh* namespaceURI, const XMLCh* elementLocalName)\r
- : AbstractXMLObject(namespaceURI,elementLocalName), m_dom(NULL), m_document(NULL) {}\r
+ AbstractDOMCachingXMLObject(const XMLCh* namespaceURI, const XMLCh* elementLocalName, const XMLCh* namespacePrefix)\r
+ : AbstractXMLObject(namespaceURI,elementLocalName, namespacePrefix), m_dom(NULL), m_document(NULL) {}\r
\r
private:\r
DOMElement* m_dom;\r