msxml3: Get rid of ::cloneNode() forward.

This commit is contained in:
Nikolay Sivov 2010-10-31 11:50:58 +03:00 committed by Alexandre Julliard
parent eef194a799
commit 936d4cf911
11 changed files with 40 additions and 37 deletions

View file

@ -358,10 +358,11 @@ static HRESULT WINAPI domattr_get_ownerDocument(
static HRESULT WINAPI domattr_cloneNode(
IXMLDOMAttribute *iface,
VARIANT_BOOL pbool, IXMLDOMNode** outNode)
VARIANT_BOOL deep, IXMLDOMNode** outNode)
{
domattr *This = impl_from_IXMLDOMAttribute( iface );
return IXMLDOMNode_cloneNode( IXMLDOMNode_from_impl(&This->node), pbool, outNode );
TRACE("(%p)->(%d %p)\n", This, deep, outNode);
return node_clone( &This->node, deep, outNode );
}
static HRESULT WINAPI domattr_get_nodeTypeString(

View file

@ -369,10 +369,11 @@ static HRESULT WINAPI domcdata_get_ownerDocument(
static HRESULT WINAPI domcdata_cloneNode(
IXMLDOMCDATASection *iface,
VARIANT_BOOL pbool, IXMLDOMNode** outNode)
VARIANT_BOOL deep, IXMLDOMNode** outNode)
{
domcdata *This = impl_from_IXMLDOMCDATASection( iface );
return IXMLDOMNode_cloneNode( IXMLDOMNode_from_impl(&This->node), pbool, outNode );
TRACE("(%p)->(%d %p)\n", This, deep, outNode);
return node_clone( &This->node, deep, outNode );
}
static HRESULT WINAPI domcdata_get_nodeTypeString(

View file

@ -362,10 +362,11 @@ static HRESULT WINAPI domcomment_get_ownerDocument(
static HRESULT WINAPI domcomment_cloneNode(
IXMLDOMComment *iface,
VARIANT_BOOL pbool, IXMLDOMNode** outNode)
VARIANT_BOOL deep, IXMLDOMNode** outNode)
{
domcomment *This = impl_from_IXMLDOMComment( iface );
return IXMLDOMNode_cloneNode( IXMLDOMNode_from_impl(&This->node), pbool, outNode );
TRACE("(%p)->(%d %p)\n", This, deep, outNode);
return node_clone( &This->node, deep, outNode );
}
static HRESULT WINAPI domcomment_get_nodeTypeString(

View file

@ -366,10 +366,11 @@ static HRESULT WINAPI domfrag_get_ownerDocument(
static HRESULT WINAPI domfrag_cloneNode(
IXMLDOMDocumentFragment *iface,
VARIANT_BOOL pbool, IXMLDOMNode** outNode)
VARIANT_BOOL deep, IXMLDOMNode** outNode)
{
domfrag *This = impl_from_IXMLDOMDocumentFragment( iface );
return IXMLDOMNode_cloneNode( IXMLDOMNode_from_impl(&This->node), pbool, outNode );
TRACE("(%p)->(%d %p)\n", This, deep, outNode);
return node_clone( &This->node, deep, outNode );
}
static HRESULT WINAPI domfrag_get_nodeTypeString(

View file

@ -1174,10 +1174,11 @@ static HRESULT WINAPI domdoc_get_ownerDocument(
static HRESULT WINAPI domdoc_cloneNode(
IXMLDOMDocument3 *iface,
VARIANT_BOOL deep,
IXMLDOMNode** cloneRoot)
IXMLDOMNode** outNode)
{
domdoc *This = impl_from_IXMLDOMDocument3( iface );
return IXMLDOMNode_cloneNode( IXMLDOMNode_from_impl(&This->node), deep, cloneRoot );
TRACE("(%p)->(%d %p)\n", This, deep, outNode);
return node_clone( &This->node, deep, outNode );
}

View file

@ -374,10 +374,11 @@ static HRESULT WINAPI domelem_get_ownerDocument(
static HRESULT WINAPI domelem_cloneNode(
IXMLDOMElement *iface,
VARIANT_BOOL pbool, IXMLDOMNode** outNode)
VARIANT_BOOL deep, IXMLDOMNode** outNode)
{
domelem *This = impl_from_IXMLDOMElement( iface );
return IXMLDOMNode_cloneNode( IXMLDOMNode_from_impl(&This->node), pbool, outNode );
TRACE("(%p)->(%d %p)\n", This, deep, outNode);
return node_clone( &This->node, deep, outNode );
}
static HRESULT WINAPI domelem_get_nodeTypeString(

View file

@ -360,10 +360,11 @@ static HRESULT WINAPI entityref_get_ownerDocument(
static HRESULT WINAPI entityref_cloneNode(
IXMLDOMEntityReference *iface,
VARIANT_BOOL pbool, IXMLDOMNode** outNode)
VARIANT_BOOL deep, IXMLDOMNode** outNode)
{
entityref *This = impl_from_IXMLDOMEntityReference( iface );
return IXMLDOMNode_cloneNode( IXMLDOMNode_from_impl(&This->node), pbool, outNode );
TRACE("(%p)->(%d %p)\n", This, deep, outNode);
return node_clone( &This->node, deep, outNode );
}
static HRESULT WINAPI entityref_get_nodeTypeString(

View file

@ -192,6 +192,7 @@ extern HRESULT node_insert_before(xmlnode*,IXMLDOMNode*,const VARIANT*,IXMLDOMNo
extern HRESULT node_replace_child(xmlnode*,IXMLDOMNode*,IXMLDOMNode*,IXMLDOMNode**);
extern HRESULT node_put_text(xmlnode*,BSTR);
extern HRESULT node_get_xml(xmlnode*,BOOL,BOOL,BSTR*);
extern HRESULT node_clone(xmlnode*,VARIANT_BOOL,IXMLDOMNode**);
extern HRESULT DOMDocument_create_from_xmldoc(xmlDocPtr xmldoc, IXMLDOMDocument3 **document);

View file

@ -449,34 +449,27 @@ static HRESULT WINAPI xmlnode_get_ownerDocument(
return DOMDocument_create_from_xmldoc(This->node->doc, (IXMLDOMDocument3**)DOMDocument);
}
static HRESULT WINAPI xmlnode_cloneNode(
IXMLDOMNode *iface,
VARIANT_BOOL deep,
IXMLDOMNode** cloneRoot)
HRESULT node_clone(xmlnode *This, VARIANT_BOOL deep, IXMLDOMNode **cloneNode)
{
xmlnode *This = impl_from_IXMLDOMNode( iface );
xmlNodePtr pClone = NULL;
IXMLDOMNode *pNode = NULL;
IXMLDOMNode *node;
xmlNodePtr clone;
TRACE("(%p)->(%d %p)\n", This, deep, cloneRoot);
if(!cloneNode) return E_INVALIDARG;
if(!cloneRoot)
return E_INVALIDARG;
pClone = xmlCopyNode(This->node, deep ? 1 : 2);
if(pClone)
clone = xmlCopyNode(This->node, deep ? 1 : 2);
if (clone)
{
pClone->doc = This->node->doc;
xmldoc_add_orphan(pClone->doc, pClone);
clone->doc = This->node->doc;
xmldoc_add_orphan(clone->doc, clone);
pNode = create_node(pClone);
if(!pNode)
node = create_node(clone);
if (!node)
{
ERR("Copy failed\n");
return E_FAIL;
}
*cloneRoot = pNode;
*cloneNode = node;
}
else
{
@ -1255,7 +1248,7 @@ static const struct IXMLDOMNodeVtbl xmlnode_vtbl =
xmlnode_appendChild,
xmlnode_hasChildNodes,
xmlnode_get_ownerDocument,
xmlnode_cloneNode,
NULL,
xmlnode_get_nodeTypeString,
xmlnode_get_text,
NULL,

View file

@ -376,10 +376,11 @@ static HRESULT WINAPI dom_pi_get_ownerDocument(
static HRESULT WINAPI dom_pi_cloneNode(
IXMLDOMProcessingInstruction *iface,
VARIANT_BOOL pbool, IXMLDOMNode** outNode)
VARIANT_BOOL deep, IXMLDOMNode** outNode)
{
dom_pi *This = impl_from_IXMLDOMProcessingInstruction( iface );
return IXMLDOMNode_cloneNode( IXMLDOMNode_from_impl(&This->node), pbool, outNode );
TRACE("(%p)->(%d %p)\n", This, deep, outNode);
return node_clone( &This->node, deep, outNode );
}
static HRESULT WINAPI dom_pi_get_nodeTypeString(

View file

@ -375,10 +375,11 @@ static HRESULT WINAPI domtext_get_ownerDocument(
static HRESULT WINAPI domtext_cloneNode(
IXMLDOMText *iface,
VARIANT_BOOL pbool, IXMLDOMNode** outNode)
VARIANT_BOOL deep, IXMLDOMNode** outNode)
{
domtext *This = impl_from_IXMLDOMText( iface );
return IXMLDOMNode_cloneNode( IXMLDOMNode_from_impl(&This->node), pbool, outNode );
TRACE("(%p)->(%d %p)\n", This, deep, outNode);
return node_clone( &This->node, deep, outNode );
}
static HRESULT WINAPI domtext_get_nodeTypeString(