Module: wine Branch: master Commit: f5a2f4a2b9bcee4cec04899953d612afe7422c0f URL: http://source.winehq.org/git/wine.git/?a=commit;h=f5a2f4a2b9bcee4cec04899953...
Author: Nikolay Sivov bunglehead@gmail.com Date: Fri Feb 12 03:59:14 2010 +0300
msxml3: Reimplement IXMLDOMDocument::createDocumentFragment() over ::createNode().
---
dlls/msxml3/domdoc.c | 23 ++++++----------------- 1 files changed, 6 insertions(+), 17 deletions(-)
diff --git a/dlls/msxml3/domdoc.c b/dlls/msxml3/domdoc.c index 6c80844..f999e12 100644 --- a/dlls/msxml3/domdoc.c +++ b/dlls/msxml3/domdoc.c @@ -1065,27 +1065,16 @@ static HRESULT WINAPI domdoc_createElement(
static HRESULT WINAPI domdoc_createDocumentFragment( IXMLDOMDocument2 *iface, - IXMLDOMDocumentFragment** docFrag ) + IXMLDOMDocumentFragment** frag ) { domdoc *This = impl_from_IXMLDOMDocument2( iface ); - xmlNodePtr xmlnode; - - TRACE("%p\n", iface); - - if(!docFrag) - return E_INVALIDARG; - - *docFrag = NULL; + VARIANT type;
- xmlnode = xmlNewDocFragment(get_doc( This ) ); + TRACE("(%p)->(%p)\n", This, frag);
- if(!xmlnode) - return E_FAIL; - - xmldoc_add_orphan(xmlnode->doc, xmlnode); - *docFrag = (IXMLDOMDocumentFragment*)create_doc_fragment(xmlnode); - - return S_OK; + V_VT(&type) = VT_I1; + V_I1(&type) = NODE_DOCUMENT_FRAGMENT; + return IXMLDOMDocument_createNode(iface, type, NULL, NULL, (IXMLDOMNode**)frag); }