msxml3: Remove unused IUnknown *outer parameter from object constructors.

Dmitry Timoshkov dmitry at baikal.ru
Mon Dec 30 03:21:46 CST 2013


Class factory explicitly checks for it:

if (outer) return CLASS_E_NOAGGREGATION;
obj_constructor(outer, &obj);

i.e. outer is always NULL in the object constructor.
---
 dlls/msxml3/domdoc.c        |  6 +++---
 dlls/msxml3/factory.c       |  8 ++++----
 dlls/msxml3/httprequest.c   | 10 +++++-----
 dlls/msxml3/msxml_private.h | 26 +++++++++++++-------------
 dlls/msxml3/mxnamespace.c   |  4 ++--
 dlls/msxml3/mxwriter.c      | 10 ++++------
 dlls/msxml3/saxreader.c     |  4 ++--
 dlls/msxml3/schema.c        |  6 +++---
 dlls/msxml3/stylesheet.c    |  8 +++-----
 dlls/msxml3/xmldoc.c        |  8 ++++----
 dlls/msxml3/xmlelem.c       | 18 +++++++++---------
 dlls/msxml3/xmlparser.c     |  7 ++-----
 dlls/msxml3/xmlview.c       | 11 ++++-------
 13 files changed, 58 insertions(+), 68 deletions(-)

diff --git a/dlls/msxml3/domdoc.c b/dlls/msxml3/domdoc.c
index 6db349c..c58379c 100644
--- a/dlls/msxml3/domdoc.c
+++ b/dlls/msxml3/domdoc.c
@@ -2626,7 +2626,7 @@ static HRESULT WINAPI domdoc_get_namespaces(
 
     if (!This->namespaces)
     {
-        hr = SchemaCache_create(This->properties->version, NULL, (void**)&This->namespaces);
+        hr = SchemaCache_create(This->properties->version, (void**)&This->namespaces);
         if (hr != S_OK) return hr;
 
         hr = cache_from_doc_ns(This->namespaces, &This->node);
@@ -3596,12 +3596,12 @@ HRESULT get_domdoc_from_xmldoc(xmlDocPtr xmldoc, IXMLDOMDocument3 **document)
     return S_OK;
 }
 
-HRESULT DOMDocument_create(MSXML_VERSION version, IUnknown *pUnkOuter, void **ppObj)
+HRESULT DOMDocument_create(MSXML_VERSION version, void **ppObj)
 {
     xmlDocPtr xmldoc;
     HRESULT hr;
 
-    TRACE("(%d, %p, %p)\n", version, pUnkOuter, ppObj);
+    TRACE("(%d, %p)\n", version, ppObj);
 
     xmldoc = xmlNewDoc(NULL);
     if(!xmldoc)
diff --git a/dlls/msxml3/factory.c b/dlls/msxml3/factory.c
index d308c12..115a524 100644
--- a/dlls/msxml3/factory.c
+++ b/dlls/msxml3/factory.c
@@ -47,8 +47,8 @@
 
 WINE_DEFAULT_DEBUG_CHANNEL(msxml);
 
-typedef HRESULT (*ClassFactoryCreateInstanceFunc)(IUnknown*, void**);
-typedef HRESULT (*DOMFactoryCreateInstanceFunc)(MSXML_VERSION, IUnknown*, void**);
+typedef HRESULT (*ClassFactoryCreateInstanceFunc)(void**);
+typedef HRESULT (*DOMFactoryCreateInstanceFunc)(MSXML_VERSION, void**);
 
 struct clsid_version_t
 {
@@ -175,7 +175,7 @@ static HRESULT WINAPI ClassFactory_CreateInstance(
     if (pOuter)
         return CLASS_E_NOAGGREGATION;
 
-    r = This->pCreateInstance( pOuter, (void**) &punk );
+    r = This->pCreateInstance( (void**) &punk );
     if (FAILED(r))
         return r;
 
@@ -233,7 +233,7 @@ static HRESULT WINAPI DOMClassFactory_CreateInstance(
     if (pOuter)
         return CLASS_E_NOAGGREGATION;
 
-    r = This->pCreateInstance( This->version, pOuter, (void**) &punk );
+    r = This->pCreateInstance( This->version, (void**) &punk );
     if (FAILED(r))
         return r;
 
diff --git a/dlls/msxml3/httprequest.c b/dlls/msxml3/httprequest.c
index 3caecad..eab840a 100644
--- a/dlls/msxml3/httprequest.c
+++ b/dlls/msxml3/httprequest.c
@@ -1166,7 +1166,7 @@ static HRESULT httprequest_get_responseXML(httprequest *This, IDispatch **body)
     if (!body) return E_INVALIDARG;
     if (This->state != READYSTATE_COMPLETE) return E_FAIL;
 
-    hr = DOMDocument_create(MSXML_DEFAULT, NULL, (void**)&doc);
+    hr = DOMDocument_create(MSXML_DEFAULT, (void**)&doc);
     if (hr != S_OK) return hr;
 
     hr = httprequest_get_responseText(This, &str);
@@ -2007,11 +2007,11 @@ static void init_httprequest(httprequest *req)
     req->safeopt = 0;
 }
 
-HRESULT XMLHTTPRequest_create(IUnknown *outer, void **obj)
+HRESULT XMLHTTPRequest_create(void **obj)
 {
     httprequest *req;
 
-    TRACE("(%p, %p)\n", outer, obj);
+    TRACE("(%p)\n", obj);
 
     req = heap_alloc( sizeof (*req) );
     if( !req )
@@ -2025,11 +2025,11 @@ HRESULT XMLHTTPRequest_create(IUnknown *outer, void **obj)
     return S_OK;
 }
 
-HRESULT ServerXMLHTTP_create(IUnknown *outer, void **obj)
+HRESULT ServerXMLHTTP_create(void **obj)
 {
     serverhttp *req;
 
-    TRACE("(%p, %p)\n", outer, obj);
+    TRACE("(%p)\n", obj);
 
     req = heap_alloc( sizeof (*req) );
     if( !req )
diff --git a/dlls/msxml3/msxml_private.h b/dlls/msxml3/msxml_private.h
index 17e19a7..e584d99 100644
--- a/dlls/msxml3/msxml_private.h
+++ b/dlls/msxml3/msxml_private.h
@@ -300,7 +300,7 @@ extern HRESULT xmldoc_remove_orphan( xmlDocPtr doc, xmlNodePtr node ) DECLSPEC_H
 extern void xmldoc_link_xmldecl(xmlDocPtr doc, xmlNodePtr node) DECLSPEC_HIDDEN;
 extern xmlNodePtr xmldoc_unlink_xmldecl(xmlDocPtr doc) DECLSPEC_HIDDEN;
 
-extern HRESULT XMLElement_create( IUnknown *pUnkOuter, xmlNodePtr node, LPVOID *ppObj, BOOL own ) DECLSPEC_HIDDEN;
+extern HRESULT XMLElement_create( xmlNodePtr node, LPVOID *ppObj, BOOL own ) DECLSPEC_HIDDEN;
 
 extern void wineXmlCallbackLog(char const* caller, xmlErrorLevel lvl, char const* msg, va_list ap) DECLSPEC_HIDDEN;
 extern void wineXmlCallbackError(char const* caller, xmlErrorPtr err) DECLSPEC_HIDDEN;
@@ -486,18 +486,18 @@ static inline HRESULT return_var_false(VARIANT_BOOL *p)
 
 extern IXMLDOMParseError *create_parseError( LONG code, BSTR url, BSTR reason, BSTR srcText,
                                              LONG line, LONG linepos, LONG filepos ) DECLSPEC_HIDDEN;
-extern HRESULT DOMDocument_create(MSXML_VERSION, IUnknown*, void**) DECLSPEC_HIDDEN;
-extern HRESULT SchemaCache_create(MSXML_VERSION, IUnknown*, void**) DECLSPEC_HIDDEN;
-extern HRESULT XMLDocument_create(IUnknown*, void**) DECLSPEC_HIDDEN;
-extern HRESULT SAXXMLReader_create(MSXML_VERSION, IUnknown*, void**) DECLSPEC_HIDDEN;
-extern HRESULT SAXAttributes_create(MSXML_VERSION, IUnknown*, void**) DECLSPEC_HIDDEN;
-extern HRESULT XMLHTTPRequest_create(IUnknown*, void **) DECLSPEC_HIDDEN;
-extern HRESULT ServerXMLHTTP_create(IUnknown*, void **) DECLSPEC_HIDDEN;
-extern HRESULT XSLTemplate_create(IUnknown*, void**) DECLSPEC_HIDDEN;
-extern HRESULT MXWriter_create(MSXML_VERSION, IUnknown*, void**) DECLSPEC_HIDDEN;
-extern HRESULT MXNamespaceManager_create(IUnknown*,void**) DECLSPEC_HIDDEN;
-extern HRESULT XMLParser_create(IUnknown*,void**) DECLSPEC_HIDDEN;
-extern HRESULT XMLView_create(IUnknown*,void**) DECLSPEC_HIDDEN;
+extern HRESULT DOMDocument_create(MSXML_VERSION, void**) DECLSPEC_HIDDEN;
+extern HRESULT SchemaCache_create(MSXML_VERSION, void**) DECLSPEC_HIDDEN;
+extern HRESULT XMLDocument_create(void**) DECLSPEC_HIDDEN;
+extern HRESULT SAXXMLReader_create(MSXML_VERSION, void**) DECLSPEC_HIDDEN;
+extern HRESULT SAXAttributes_create(MSXML_VERSION, void**) DECLSPEC_HIDDEN;
+extern HRESULT XMLHTTPRequest_create(void **) DECLSPEC_HIDDEN;
+extern HRESULT ServerXMLHTTP_create(void **) DECLSPEC_HIDDEN;
+extern HRESULT XSLTemplate_create(void**) DECLSPEC_HIDDEN;
+extern HRESULT MXWriter_create(MSXML_VERSION, void**) DECLSPEC_HIDDEN;
+extern HRESULT MXNamespaceManager_create(void**) DECLSPEC_HIDDEN;
+extern HRESULT XMLParser_create(void**) DECLSPEC_HIDDEN;
+extern HRESULT XMLView_create(void**) DECLSPEC_HIDDEN;
 
 static inline const CLSID* DOMDocument_version(MSXML_VERSION v)
 {
diff --git a/dlls/msxml3/mxnamespace.c b/dlls/msxml3/mxnamespace.c
index 7ec3f6e..c2d9cc3 100644
--- a/dlls/msxml3/mxnamespace.c
+++ b/dlls/msxml3/mxnamespace.c
@@ -645,12 +645,12 @@ static dispex_static_data_t namespacemanager_dispex = {
     namespacemanager_iface_tids
 };
 
-HRESULT MXNamespaceManager_create(IUnknown *outer, void **obj)
+HRESULT MXNamespaceManager_create(void **obj)
 {
     namespacemanager *This;
     struct nscontext *ctxt;
 
-    TRACE("(%p, %p)\n", outer, obj);
+    TRACE("(%p)\n", obj);
 
     This = heap_alloc( sizeof (*This) );
     if( !This )
diff --git a/dlls/msxml3/mxwriter.c b/dlls/msxml3/mxwriter.c
index dd4e629..cfbc46e 100644
--- a/dlls/msxml3/mxwriter.c
+++ b/dlls/msxml3/mxwriter.c
@@ -1658,15 +1658,13 @@ static dispex_static_data_t mxwriter_dispex = {
     mxwriter_iface_tids
 };
 
-HRESULT MXWriter_create(MSXML_VERSION version, IUnknown *outer, void **ppObj)
+HRESULT MXWriter_create(MSXML_VERSION version, void **ppObj)
 {
     static const WCHAR version10W[] = {'1','.','0',0};
     mxwriter *This;
     HRESULT hr;
 
-    TRACE("(%p, %p)\n", outer, ppObj);
-
-    if (outer) FIXME("support aggregation, outer\n");
+    TRACE("(%p)\n", ppObj);
 
     This = heap_alloc( sizeof (*This) );
     if(!This)
@@ -2515,12 +2513,12 @@ static dispex_static_data_t mxattrs_dispex = {
     mxattrs_iface_tids
 };
 
-HRESULT SAXAttributes_create(MSXML_VERSION version, IUnknown *outer, void **ppObj)
+HRESULT SAXAttributes_create(MSXML_VERSION version, void **ppObj)
 {
     static const int default_count = 10;
     mxattributes *This;
 
-    TRACE("(%p, %p)\n", outer, ppObj);
+    TRACE("(%p)\n", ppObj);
 
     This = heap_alloc( sizeof (*This) );
     if( !This )
diff --git a/dlls/msxml3/saxreader.c b/dlls/msxml3/saxreader.c
index 61534ac..ae00a95 100644
--- a/dlls/msxml3/saxreader.c
+++ b/dlls/msxml3/saxreader.c
@@ -3301,11 +3301,11 @@ static dispex_static_data_t saxreader_dispex = {
     saxreader_iface_tids
 };
 
-HRESULT SAXXMLReader_create(MSXML_VERSION version, IUnknown *outer, LPVOID *ppObj)
+HRESULT SAXXMLReader_create(MSXML_VERSION version, LPVOID *ppObj)
 {
     saxreader *reader;
 
-    TRACE("(%p, %p)\n", outer, ppObj);
+    TRACE("(%p)\n", ppObj);
 
     reader = heap_alloc( sizeof (*reader) );
     if( !reader )
diff --git a/dlls/msxml3/schema.c b/dlls/msxml3/schema.c
index 8c00f86..5141ac4 100644
--- a/dlls/msxml3/schema.c
+++ b/dlls/msxml3/schema.c
@@ -936,7 +936,7 @@ static cache_entry* cache_entry_from_url(VARIANT url, xmlChar const* nsURI, MSXM
     cache_entry* entry;
     IXMLDOMDocument3* domdoc = NULL;
     xmlDocPtr doc = NULL;
-    HRESULT hr = DOMDocument_create(version, NULL, (void**)&domdoc);
+    HRESULT hr = DOMDocument_create(version, (void**)&domdoc);
     VARIANT_BOOL b = VARIANT_FALSE;
     CacheEntryType type = CacheEntryType_Invalid;
 
@@ -1568,13 +1568,13 @@ static dispex_static_data_t schemacache_dispex = {
     schemacache_iface_tids
 };
 
-HRESULT SchemaCache_create(MSXML_VERSION version, IUnknown* outer, void** obj)
+HRESULT SchemaCache_create(MSXML_VERSION version, void** obj)
 {
     schema_cache* This = heap_alloc(sizeof(schema_cache));
     if (!This)
         return E_OUTOFMEMORY;
 
-    TRACE("(%d %p %p)\n", version, outer, obj);
+    TRACE("(%d %p)\n", version, obj);
 
     This->IXMLDOMSchemaCollection2_iface.lpVtbl = &XMLDOMSchemaCollection2Vtbl;
     This->cache = xmlHashCreate(DEFAULT_HASHTABLE_SIZE);
diff --git a/dlls/msxml3/stylesheet.c b/dlls/msxml3/stylesheet.c
index 9106b40..87f8fe2 100644
--- a/dlls/msxml3/stylesheet.c
+++ b/dlls/msxml3/stylesheet.c
@@ -237,13 +237,11 @@ static dispex_static_data_t xsltemplate_dispex = {
     xsltemplate_iface_tids
 };
 
-HRESULT XSLTemplate_create(IUnknown *outer, void **ppObj)
+HRESULT XSLTemplate_create(void **ppObj)
 {
     xsltemplate *This;
 
-    TRACE("(%p, %p)\n", outer, ppObj);
-
-    if(outer) FIXME("support aggregation, outer\n");
+    TRACE("(%p)\n", ppObj);
 
     This = heap_alloc( sizeof (*This) );
     if(!This)
@@ -372,7 +370,7 @@ static HRESULT WINAPI xslprocessor_put_input( IXSLProcessor *iface, VARIANT inpu
     {
         IXMLDOMDocument *doc;
 
-        hr = DOMDocument_create(MSXML_DEFAULT, NULL, (void**)&doc);
+        hr = DOMDocument_create(MSXML_DEFAULT, (void**)&doc);
         if (hr == S_OK)
         {
             VARIANT_BOOL b;
diff --git a/dlls/msxml3/xmldoc.c b/dlls/msxml3/xmldoc.c
index 1cf8785..c59cda2 100644
--- a/dlls/msxml3/xmldoc.c
+++ b/dlls/msxml3/xmldoc.c
@@ -212,7 +212,7 @@ static HRESULT WINAPI xmldoc_get_root(IXMLDocument *iface, IXMLElement **p)
     if (!(root = xmlDocGetRootElement(This->xmldoc)))
         return E_FAIL;
 
-    return XMLElement_create((IUnknown *)This, root, (LPVOID *)p, FALSE);
+    return XMLElement_create(root, (LPVOID *)p, FALSE);
 }
 
 static HRESULT WINAPI xmldoc_get_fileSize(IXMLDocument *iface, BSTR *p)
@@ -524,7 +524,7 @@ static HRESULT WINAPI xmldoc_createElement(IXMLDocument *iface, VARIANT vType,
     node->type = type_msxml_to_libxml(V_I4(&vType));
 
     /* FIXME: create xmlNodePtr based on vType and var1 */
-    return XMLElement_create((IUnknown *)iface, node, (LPVOID *)ppElem, TRUE);
+    return XMLElement_create(node, (LPVOID *)ppElem, TRUE);
 }
 
 static const struct IXMLDocumentVtbl xmldoc_vtbl =
@@ -696,11 +696,11 @@ static const IPersistStreamInitVtbl xmldoc_IPersistStreamInit_VTable =
   xmldoc_IPersistStreamInit_InitNew
 };
 
-HRESULT XMLDocument_create(IUnknown *pUnkOuter, LPVOID *ppObj)
+HRESULT XMLDocument_create(LPVOID *ppObj)
 {
     xmldoc *doc;
 
-    TRACE("(%p,%p)\n", pUnkOuter, ppObj);
+    TRACE("(%p)\n", ppObj);
 
     doc = heap_alloc(sizeof (*doc));
     if(!doc)
diff --git a/dlls/msxml3/xmlelem.c b/dlls/msxml3/xmlelem.c
index a932397..2130c713 100644
--- a/dlls/msxml3/xmlelem.c
+++ b/dlls/msxml3/xmlelem.c
@@ -43,7 +43,7 @@ WINE_DEFAULT_DEBUG_CHANNEL(msxml);
 
 #ifdef HAVE_LIBXML2
 
-static HRESULT XMLElementCollection_create( IUnknown *pUnkOuter, xmlNodePtr node, LPVOID *ppObj );
+static HRESULT XMLElementCollection_create( xmlNodePtr node, LPVOID *ppObj );
 
 /**********************************************************************
  * IXMLElement
@@ -227,7 +227,7 @@ static HRESULT WINAPI xmlelem_get_parent(IXMLElement *iface, IXMLElement **paren
     if (!This->node->parent)
         return S_FALSE;
 
-    return XMLElement_create((IUnknown *)iface, This->node->parent, (LPVOID *)parent, FALSE);
+    return XMLElement_create(This->node->parent, (LPVOID *)parent, FALSE);
 }
 
 static HRESULT WINAPI xmlelem_setAttribute(IXMLElement *iface, BSTR strPropertyName,
@@ -350,7 +350,7 @@ static HRESULT WINAPI xmlelem_get_children(IXMLElement *iface, IXMLElementCollec
     if (!p)
         return E_INVALIDARG;
 
-    return XMLElementCollection_create((IUnknown *)iface, This->node, (LPVOID *)p);
+    return XMLElementCollection_create(This->node, (LPVOID *)p);
 }
 
 static LONG type_libxml_to_msxml(xmlElementType type)
@@ -491,11 +491,11 @@ static const struct IXMLElementVtbl xmlelem_vtbl =
     xmlelem_removeChild
 };
 
-HRESULT XMLElement_create(IUnknown *pUnkOuter, xmlNodePtr node, LPVOID *ppObj, BOOL own)
+HRESULT XMLElement_create(xmlNodePtr node, LPVOID *ppObj, BOOL own)
 {
     xmlelem *elem;
 
-    TRACE("(%p,%p)\n", pUnkOuter, ppObj);
+    TRACE("(%p)\n", ppObj);
 
     if (!ppObj)
         return E_INVALIDARG;
@@ -693,7 +693,7 @@ static HRESULT WINAPI xmlelem_collection_item(IXMLElementCollection *iface, VARI
     for (i = 0; i < index; i++)
         ptr = ptr->next;
 
-    return XMLElement_create((IUnknown *)iface, ptr, (LPVOID *)ppDisp, FALSE);
+    return XMLElement_create(ptr, (LPVOID *)ppDisp, FALSE);
 }
 
 static const struct IXMLElementCollectionVtbl xmlelem_collection_vtbl =
@@ -760,7 +760,7 @@ static HRESULT WINAPI xmlelem_collection_IEnumVARIANT_Next(
     }
 
     V_VT(rgVar) = VT_DISPATCH;
-    return XMLElement_create((IUnknown *)iface, ptr, (LPVOID *)&V_DISPATCH(rgVar), FALSE);
+    return XMLElement_create(ptr, (LPVOID *)&V_DISPATCH(rgVar), FALSE);
 }
 
 static HRESULT WINAPI xmlelem_collection_IEnumVARIANT_Skip(
@@ -799,11 +799,11 @@ static const struct IEnumVARIANTVtbl xmlelem_collection_IEnumVARIANTvtbl =
     xmlelem_collection_IEnumVARIANT_Clone
 };
 
-static HRESULT XMLElementCollection_create(IUnknown *pUnkOuter, xmlNodePtr node, LPVOID *ppObj)
+static HRESULT XMLElementCollection_create(xmlNodePtr node, LPVOID *ppObj)
 {
     xmlelem_collection *collection;
 
-    TRACE("(%p,%p)\n", pUnkOuter, ppObj);
+    TRACE("(%p)\n", ppObj);
 
     *ppObj = NULL;
 
diff --git a/dlls/msxml3/xmlparser.c b/dlls/msxml3/xmlparser.c
index 4c91a1e..ca40b22 100644
--- a/dlls/msxml3/xmlparser.c
+++ b/dlls/msxml3/xmlparser.c
@@ -433,14 +433,11 @@ static const struct IXMLParserVtbl xmlparser_vtbl =
     xmlparser_GetSecureBaseURL
 };
 
-HRESULT XMLParser_create(IUnknown* pUnkOuter, void**ppObj)
+HRESULT XMLParser_create(void **ppObj)
 {
     xmlparser *This;
 
-    TRACE("(%p,%p)\n", pUnkOuter, ppObj);
-
-    if (pUnkOuter)
-        FIXME("support aggregation, outer\n");
+    TRACE("(%p)\n", ppObj);
 
     This = heap_alloc( sizeof(xmlparser) );
     if(!This)
diff --git a/dlls/msxml3/xmlview.c b/dlls/msxml3/xmlview.c
index c2e6f1e..95ede92 100644
--- a/dlls/msxml3/xmlview.c
+++ b/dlls/msxml3/xmlview.c
@@ -399,7 +399,7 @@ static inline HRESULT handle_xml_load(BindStatusCallback *This)
     if(FAILED(hres))
         return display_error_page(This);
 
-    hres = DOMDocument_create(MSXML_DEFAULT, NULL, (void**)&xml);
+    hres = DOMDocument_create(MSXML_DEFAULT, (void**)&xml);
     if(FAILED(hres))
         return display_error_page(This);
 
@@ -475,7 +475,7 @@ static inline HRESULT handle_xml_load(BindStatusCallback *This)
         return display_error_page(This);
     }
 
-    hres = DOMDocument_create(MSXML_DEFAULT, NULL, (void**)&xsl);
+    hres = DOMDocument_create(MSXML_DEFAULT, (void**)&xsl);
     if(FAILED(hres)) {
         VariantClear(&var);
         IXMLDOMDocument3_Release(xml);
@@ -1424,15 +1424,12 @@ static IOleObjectVtbl XMLView_OleObjectVtbl = {
     XMLView_OleObject_SetColorScheme
 };
 
-HRESULT XMLView_create(IUnknown *outer, void **ppObj)
+HRESULT XMLView_create(void **ppObj)
 {
     XMLView *This;
     HRESULT hres;
 
-    TRACE("(%p %p)\n", outer, ppObj);
-
-    if(outer)
-        return E_FAIL;
+    TRACE("(%p)\n", ppObj);
 
     This = heap_alloc_zero(sizeof(*This));
     if(!This)
-- 
1.8.5.2




More information about the wine-patches mailing list