knoaman 2002/07/26 09:35:18 Modified: c/src/xercesc/dom/impl DOMNodeImpl.cpp Log: For a given DOM Element and DOM DocumentType node, explicitly cast to the implementation of that DOM node when calling setReadOnly. Revision Changes Path 1.8 +21 -5 xml-xerces/c/src/xercesc/dom/impl/DOMNodeImpl.cpp Index: DOMNodeImpl.cpp =================================================================== RCS file: /home/cvs/xml-xerces/c/src/xercesc/dom/impl/DOMNodeImpl.cpp,v retrieving revision 1.7 retrieving revision 1.8 diff -u -r1.7 -r1.8 --- DOMNodeImpl.cpp 25 Jul 2002 12:37:35 -0000 1.7 +++ DOMNodeImpl.cpp 26 Jul 2002 16:35:16 -0000 1.8 @@ -63,7 +63,8 @@ // The ParentNode subclass overrides this behavior. -#include "DOMNodeImpl.hpp" +#include "DOMDocumentTypeImpl.hpp" +#include "DOMElementImpl.hpp" #include "DOMCasts.hpp" #include "DOMDocumentImpl.hpp" @@ -280,9 +281,24 @@ if (deep) { for (DOMNode *mykid = castToNode(this)->getFirstChild(); mykid != 0; - mykid = mykid->getNextSibling()) - if(mykid->getNodeType() != DOMNode::ENTITY_REFERENCE_NODE) - castToNodeImpl(mykid)->setReadOnly(readOnl,true); + mykid = mykid->getNextSibling()) { + + short kidNodeType = mykid->getNodeType(); + + switch (kidNodeType) { + case DOMNode::ENTITY_REFERENCE_NODE: + break; + case DOMNode::ELEMENT_NODE: + ((DOMElementImpl*) mykid)->setReadOnly(readOnl, true); + break; + case DOMNode::DOCUMENT_TYPE_NODE: + ((DOMDocumentTypeImpl*) mykid)->setReadOnly(readOnl, true); + break; + default: + castToNodeImpl(mykid)->setReadOnly(readOnl, true); + break; + } + } } }
--------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]