msxml3: Don't use xmlnode's IXMLDOMNode iface in get_childNode implementations.

This commit is contained in:
Jacek Caban 2010-09-08 15:12:02 +02:00 committed by Alexandre Julliard
parent ed2b72248f
commit c8b15e90bd
11 changed files with 56 additions and 22 deletions

View File

@ -238,7 +238,10 @@ static HRESULT WINAPI domattr_get_childNodes(
IXMLDOMNodeList** outList) IXMLDOMNodeList** outList)
{ {
domattr *This = impl_from_IXMLDOMAttribute( iface ); domattr *This = impl_from_IXMLDOMAttribute( iface );
return IXMLDOMNode_get_childNodes( IXMLDOMNode_from_impl(&This->node), outList );
TRACE("(%p)->(%p)\n", This, outList);
return node_get_child_nodes(&This->node, outList);
} }
static HRESULT WINAPI domattr_get_firstChild( static HRESULT WINAPI domattr_get_firstChild(

View File

@ -249,7 +249,10 @@ static HRESULT WINAPI domcdata_get_childNodes(
IXMLDOMNodeList** outList) IXMLDOMNodeList** outList)
{ {
domcdata *This = impl_from_IXMLDOMCDATASection( iface ); domcdata *This = impl_from_IXMLDOMCDATASection( iface );
return IXMLDOMNode_get_childNodes( IXMLDOMNode_from_impl(&This->node), outList );
TRACE("(%p)->(%p)\n", This, outList);
return node_get_child_nodes(&This->node, outList);
} }
static HRESULT WINAPI domcdata_get_firstChild( static HRESULT WINAPI domcdata_get_firstChild(

View File

@ -242,7 +242,10 @@ static HRESULT WINAPI domcomment_get_childNodes(
IXMLDOMNodeList** outList) IXMLDOMNodeList** outList)
{ {
domcomment *This = impl_from_IXMLDOMComment( iface ); domcomment *This = impl_from_IXMLDOMComment( iface );
return IXMLDOMNode_get_childNodes( IXMLDOMNode_from_impl(&This->node), outList );
TRACE("(%p)->(%p)\n", This, outList);
return node_get_child_nodes(&This->node, outList);
} }
static HRESULT WINAPI domcomment_get_firstChild( static HRESULT WINAPI domcomment_get_firstChild(

View File

@ -244,7 +244,10 @@ static HRESULT WINAPI domfrag_get_childNodes(
IXMLDOMNodeList** outList) IXMLDOMNodeList** outList)
{ {
domfrag *This = impl_from_IXMLDOMDocumentFragment( iface ); domfrag *This = impl_from_IXMLDOMDocumentFragment( iface );
return IXMLDOMNode_get_childNodes( IXMLDOMNode_from_impl(&This->node), outList );
TRACE("(%p)->(%p)\n", This, outList);
return node_get_child_nodes(&This->node, outList);
} }
static HRESULT WINAPI domfrag_get_firstChild( static HRESULT WINAPI domfrag_get_firstChild(

View File

@ -752,7 +752,10 @@ static HRESULT WINAPI domdoc_get_childNodes(
IXMLDOMNodeList** childList ) IXMLDOMNodeList** childList )
{ {
domdoc *This = impl_from_IXMLDOMDocument3( iface ); domdoc *This = impl_from_IXMLDOMDocument3( iface );
return IXMLDOMNode_get_childNodes( IXMLDOMNode_from_impl(&This->node), childList );
TRACE("(%p)->(%p)\n", This, childList);
return node_get_child_nodes(&This->node, childList);
} }

View File

@ -253,7 +253,10 @@ static HRESULT WINAPI domelem_get_childNodes(
IXMLDOMNodeList** outList) IXMLDOMNodeList** outList)
{ {
domelem *This = impl_from_IXMLDOMElement( iface ); domelem *This = impl_from_IXMLDOMElement( iface );
return IXMLDOMNode_get_childNodes( IXMLDOMNode_from_impl(&This->node), outList );
TRACE("(%p)->(%p)\n", This, outList);
return node_get_child_nodes(&This->node, outList);
} }
static HRESULT WINAPI domelem_get_firstChild( static HRESULT WINAPI domelem_get_firstChild(

View File

@ -240,7 +240,10 @@ static HRESULT WINAPI entityref_get_childNodes(
IXMLDOMNodeList** outList) IXMLDOMNodeList** outList)
{ {
entityref *This = impl_from_IXMLDOMEntityReference( iface ); entityref *This = impl_from_IXMLDOMEntityReference( iface );
return IXMLDOMNode_get_childNodes( IXMLDOMNode_from_impl(&This->node), outList );
TRACE("(%p)->(%p)\n", This, outList);
return node_get_child_nodes(&This->node, outList);
} }
static HRESULT WINAPI entityref_get_firstChild( static HRESULT WINAPI entityref_get_firstChild(

View File

@ -163,6 +163,8 @@ extern HRESULT node_get_nodeName(xmlnode*,BSTR*);
extern HRESULT node_get_content(xmlnode*,VARIANT*); extern HRESULT node_get_content(xmlnode*,VARIANT*);
extern HRESULT node_put_value(xmlnode*,VARIANT*); extern HRESULT node_put_value(xmlnode*,VARIANT*);
extern HRESULT node_get_parent(xmlnode*,IXMLDOMNode**); extern HRESULT node_get_parent(xmlnode*,IXMLDOMNode**);
extern HRESULT node_get_child_nodes(xmlnode*,IXMLDOMNodeList**);
extern HRESULT DOMDocument_create_from_xmldoc(xmlDocPtr xmldoc, IXMLDOMDocument3 **document); extern HRESULT DOMDocument_create_from_xmldoc(xmlDocPtr xmldoc, IXMLDOMDocument3 **document);

View File

@ -293,22 +293,24 @@ static HRESULT WINAPI xmlnode_get_parentNode(
return E_NOTIMPL; return E_NOTIMPL;
} }
HRESULT node_get_child_nodes(xmlnode *This, IXMLDOMNodeList **ret)
{
if(!ret)
return E_INVALIDARG;
*ret = create_children_nodelist(This->node);
if(!*ret)
return E_OUTOFMEMORY;
return S_OK;
}
static HRESULT WINAPI xmlnode_get_childNodes( static HRESULT WINAPI xmlnode_get_childNodes(
IXMLDOMNode *iface, IXMLDOMNode *iface,
IXMLDOMNodeList** childList) IXMLDOMNodeList** childList)
{ {
xmlnode *This = impl_from_IXMLDOMNode( iface ); ERR("Should not be called\n");
return E_NOTIMPL;
TRACE("(%p)->(%p)\n", This, childList );
if ( !childList )
return E_INVALIDARG;
*childList = create_children_nodelist(This->node);
if (*childList == NULL)
return E_OUTOFMEMORY;
return S_OK;
} }
static HRESULT WINAPI xmlnode_get_firstChild( static HRESULT WINAPI xmlnode_get_firstChild(
@ -1825,7 +1827,10 @@ static HRESULT WINAPI unknode_get_childNodes(
IXMLDOMNodeList** outList) IXMLDOMNodeList** outList)
{ {
unknode *This = impl_from_unkIXMLDOMNode( iface ); unknode *This = impl_from_unkIXMLDOMNode( iface );
return IXMLDOMNode_get_childNodes( IXMLDOMNode_from_impl(&This->node), outList );
TRACE("(%p)->(%p)\n", This, outList);
return node_get_child_nodes(&This->node, outList);
} }
static HRESULT WINAPI unknode_get_firstChild( static HRESULT WINAPI unknode_get_firstChild(

View File

@ -255,7 +255,10 @@ static HRESULT WINAPI dom_pi_get_childNodes(
IXMLDOMNodeList** outList) IXMLDOMNodeList** outList)
{ {
dom_pi *This = impl_from_IXMLDOMProcessingInstruction( iface ); dom_pi *This = impl_from_IXMLDOMProcessingInstruction( iface );
return IXMLDOMNode_get_childNodes( IXMLDOMNode_from_impl(&This->node), outList );
TRACE("(%p)->(%p)\n", This, outList);
return node_get_child_nodes(&This->node, outList);
} }
static HRESULT WINAPI dom_pi_get_firstChild( static HRESULT WINAPI dom_pi_get_firstChild(

View File

@ -255,7 +255,10 @@ static HRESULT WINAPI domtext_get_childNodes(
IXMLDOMNodeList** outList) IXMLDOMNodeList** outList)
{ {
domtext *This = impl_from_IXMLDOMText( iface ); domtext *This = impl_from_IXMLDOMText( iface );
return IXMLDOMNode_get_childNodes( IXMLDOMNode_from_impl(&This->node), outList );
TRACE("(%p)->(%p)\n", This, outList);
return node_get_child_nodes(&This->node, outList);
} }
static HRESULT WINAPI domtext_get_firstChild( static HRESULT WINAPI domtext_get_firstChild(