Reimplement IXMLDOMDocument::createDocumentFragment() over ::createNode().
Nikolay Sivov
bunglehead at gmail.com
Thu Feb 11 18:59:14 CST 2010
---
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);
}
--
1.5.6.5
--=-LzHjtXHc6eRB8+tGAZ7T--
More information about the wine-patches
mailing list