Author: johns
Date: Fri Nov 13 18:01:21 2009
New Revision: 835942
URL: http://svn.apache.org/viewvc?rev=835942&view=rev
Log:
Fixed DOMDocumentImpl::importNode() to copy the prefix of element and attribute
nodes.
Modified:
xerces/c/trunk/src/xercesc/dom/impl/DOMDocumentImpl.cpp
Modified: xerces/c/trunk/src/xercesc/dom/impl/DOMDocumentImpl.cpp
URL:
http://svn.apache.org/viewvc/xerces/c/trunk/src/xercesc/dom/impl/DOMDocumentImpl.cpp?rev=835942&r1=835941&r2=835942&view=diff
==============================================================================
--- xerces/c/trunk/src/xercesc/dom/impl/DOMDocumentImpl.cpp (original)
+++ xerces/c/trunk/src/xercesc/dom/impl/DOMDocumentImpl.cpp Fri Nov 13 18:01:21
2009
@@ -1067,6 +1067,9 @@
else
{
DOMElementNSImpl* nsElem =
(DOMElementNSImpl*)createElementNS(source->getNamespaceURI(),
source->getNodeName());
+ if(source->getNamespaceURI() != 0 &&
*source->getNamespaceURI() != 0) {
+ nsElem->setPrefix(source->getPrefix());
+ }
DOMTypeInfoImpl* clonedTypeInfo=NULL;
// if the source has type informations, copy them
DOMPSVITypeInfo*
sourcePSVI=(DOMPSVITypeInfo*)source->getFeature(XMLUni::fgXercescInterfacePSVITypeInfo,
0);
@@ -1113,8 +1116,12 @@
DOMAttrImpl* newattr=NULL;
if (source->getLocalName() == 0)
newattr = (DOMAttrImpl*)createAttribute(source->getNodeName());
- else
+ else {
newattr =
(DOMAttrImpl*)createAttributeNS(source->getNamespaceURI(),
source->getNodeName());
+ if(source->getNamespaceURI() != 0 &&
*source->getNamespaceURI() != 0) {
+ newattr->setPrefix(source->getPrefix());
+ }
+ }
DOMTypeInfoImpl* clonedTypeInfo=NULL;
// if the source has type informations, copy them
DOMPSVITypeInfo*
sourcePSVI=(DOMPSVITypeInfo*)source->getFeature(XMLUni::fgXercescInterfacePSVITypeInfo,
0);
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]