Standardize the DllGetClassObject prototypes

Francois Gouget fgouget at free.fr
Thu Aug 4 17:16:25 CDT 2005


According to MSDN the prototype of the DllGetClassObject() functions is:

HRESULT WINAPI DllGetClassObject(REFCLSID pclsid, REFIID piid, LPVOID *ppv);


But in Wine it has sometimes varied a bit, like returning a DWROD 
instead of an HRESULT. Nothing too serious but I like order so I went 
through them and made them all the same.

There's one which is more seriously wrong though: 
MSXML_DllGetClassObject() is missing the WINAPI. This cause 
winapi_check to issue an error and is how I got into this.


Changelog:

  * dlls/msxml3/factory.c
    dlls/amstream/main.c
    dlls/avifil32/factory.c
    dlls/d3dxof/main.c
    dlls/ddraw/main.c
    dlls/dplayx/dpclassfactory.c
    dlls/msisys/msisys.c
    dlls/urlmon/urlmon_main.c

    Francois Gouget <fgouget at free.fr>
    Add missing WINAPI to MSXML_DllGetClassObject().
    Standardize the DllGetClassObject() prototypes so they match the MSDN 
definition.

-- 
Francois Gouget         fgouget at free.fr        http://fgouget.free.fr/
      Linux, WinNT, MS-DOS - also known as the Good, the Bad and the Ugly.
-------------- next part --------------
Index: dlls/msxml3/factory.c
===================================================================
RCS file: /var/cvs/wine/dlls/msxml3/factory.c,v
retrieving revision 1.1
diff -u -p -r1.1 factory.c
--- dlls/msxml3/factory.c	2 Aug 2005 11:29:05 -0000	1.1
+++ dlls/msxml3/factory.c	3 Aug 2005 18:01:00 -0000
@@ -127,7 +127,7 @@ const struct IClassFactoryVtbl xmlcf_vtb
 
 static xmlcf domdoccf = { &xmlcf_vtbl, DOMDocument_create };
 
-HRESULT MSXML_DllGetClassObject( REFCLSID rclsid, REFIID iid, LPVOID *ppv )
+HRESULT WINAPI MSXML_DllGetClassObject( REFCLSID rclsid, REFIID iid, LPVOID *ppv )
 {
     IClassFactory *cf = NULL;
 
Index: dlls/amstream/main.c
===================================================================
RCS file: /var/cvs/wine/dlls/amstream/main.c,v
retrieving revision 1.8
diff -u -p -r1.8 main.c
--- dlls/amstream/main.c	11 Jul 2005 14:24:53 -0000	1.8
+++ dlls/amstream/main.c	3 Aug 2005 18:10:51 -0000
@@ -167,7 +167,7 @@ static const IClassFactoryVtbl DSCF_Vtbl
  *    Failure: CLASS_E_CLASSNOTAVAILABLE, E_OUTOFMEMORY, E_INVALIDARG,
  *             E_UNEXPECTED
  */
-DWORD WINAPI AMSTREAM_DllGetClassObject(REFCLSID rclsid, REFIID riid, LPVOID *ppv)
+HRESULT WINAPI AMSTREAM_DllGetClassObject(REFCLSID rclsid, REFIID riid, LPVOID *ppv)
 {
     int i;
     IClassFactoryImpl *factory;
Index: dlls/avifil32/factory.c
===================================================================
RCS file: /var/cvs/wine/dlls/avifil32/factory.c,v
retrieving revision 1.18
diff -u -p -r1.18 factory.c
--- dlls/avifil32/factory.c	27 May 2005 20:17:37 -0000	1.18
+++ dlls/avifil32/factory.c	3 Aug 2005 18:06:54 -0000
@@ -182,7 +182,7 @@ LPCWSTR AVIFILE_BasenameW(LPCWSTR szPath
 /***********************************************************************
  *		DllGetClassObject (AVIFIL32.@)
  */
-HRESULT WINAPI AVIFILE_DllGetClassObject(const CLSID* pclsid,REFIID piid,LPVOID *ppv)
+HRESULT WINAPI AVIFILE_DllGetClassObject(REFCLSID pclsid, REFIID piid, LPVOID *ppv)
 {
   TRACE("(%s,%s,%p)\n", debugstr_guid(pclsid), debugstr_guid(piid), ppv);
 
Index: dlls/d3dxof/main.c
===================================================================
RCS file: /var/cvs/wine/dlls/d3dxof/main.c,v
retrieving revision 1.10
diff -u -p -r1.10 main.c
--- dlls/d3dxof/main.c	12 Jul 2005 17:03:19 -0000	1.10
+++ dlls/d3dxof/main.c	3 Aug 2005 18:13:17 -0000
@@ -183,7 +183,7 @@ HRESULT WINAPI DirectXFileCreate(LPDIREC
  *    Failure: CLASS_E_CLASSNOTAVAILABLE, E_OUTOFMEMORY, E_INVALIDARG,
  *             E_UNEXPECTED
  */
-DWORD WINAPI D3DXOF_DllGetClassObject(REFCLSID rclsid, REFIID riid, LPVOID *ppv)
+HRESULT WINAPI D3DXOF_DllGetClassObject(REFCLSID rclsid, REFIID riid, LPVOID *ppv)
 {
     int i;
     IClassFactoryImpl *factory;
Index: dlls/ddraw/main.c
===================================================================
RCS file: /var/cvs/wine/dlls/ddraw/main.c,v
retrieving revision 1.52
diff -u -p -r1.52 main.c
--- dlls/ddraw/main.c	11 Jul 2005 13:21:17 -0000	1.52
+++ dlls/ddraw/main.c	3 Aug 2005 18:13:38 -0000
@@ -560,7 +560,7 @@ static const IClassFactoryVtbl DDCF_Vtbl
  *    Failure: CLASS_E_CLASSNOTAVAILABLE, E_OUTOFMEMORY, E_INVALIDARG,
  *             E_UNEXPECTED
  */
-DWORD WINAPI DDRAW_DllGetClassObject(REFCLSID rclsid,REFIID riid,LPVOID *ppv)
+HRESULT WINAPI DDRAW_DllGetClassObject(REFCLSID rclsid, REFIID riid, LPVOID *ppv)
 {
     unsigned int i;
     IClassFactoryImpl *factory;
Index: dlls/dplayx/dpclassfactory.c
===================================================================
RCS file: /var/cvs/wine/dlls/dplayx/dpclassfactory.c,v
retrieving revision 1.25
diff -u -p -r1.25 dpclassfactory.c
--- dlls/dplayx/dpclassfactory.c	12 Jul 2005 19:21:37 -0000	1.25
+++ dlls/dplayx/dpclassfactory.c	3 Aug 2005 18:15:00 -0000
@@ -117,7 +117,7 @@ static IClassFactoryImpl DP_and_DPL_CF =
  *    Failure: CLASS_E_CLASSNOTAVAILABLE, E_OUTOFMEMORY, E_INVALIDARG,
  *             E_UNEXPECTED
  */
-DWORD WINAPI DPLAYX_DllGetClassObject(REFCLSID rclsid,REFIID riid,LPVOID *ppv)
+HRESULT WINAPI DPLAYX_DllGetClassObject(REFCLSID rclsid, REFIID riid, LPVOID *ppv)
 {
     TRACE("(%p,%p,%p)\n", debugstr_guid(rclsid), debugstr_guid(riid), ppv);
 
Index: dlls/msisys/msisys.c
===================================================================
RCS file: /var/cvs/wine/dlls/msisys/msisys.c,v
retrieving revision 1.6
diff -u -p -r1.6 msisys.c
--- dlls/msisys/msisys.c	8 Sep 2003 19:38:46 -0000	1.6
+++ dlls/msisys/msisys.c	3 Aug 2005 18:09:45 -0000
@@ -93,7 +93,7 @@ HRESULT WINAPI MSISYS_DllCanUnloadNow(vo
  *		DllGetClassObject (MSISYS.@)
  */
 HRESULT WINAPI MSISYS_DllGetClassObject(
-		const CLSID* pclsid,const IID* piid,void** ppv)
+		REFCLSID pclsid, const IID* piid, LPVOID *ppv)
 {
         FIXME("\n");
 
Index: dlls/urlmon/urlmon_main.c
===================================================================
RCS file: /var/cvs/wine/dlls/urlmon/urlmon_main.c,v
retrieving revision 1.29
diff -u -p -r1.29 urlmon_main.c
--- dlls/urlmon/urlmon_main.c	3 Jul 2005 12:05:03 -0000	1.29
+++ dlls/urlmon/urlmon_main.c	3 Aug 2005 18:07:18 -0000
@@ -199,7 +199,7 @@ static const IClassFactoryVtbl CF_Vtbl =
  *             E_UNEXPECTED
  */
 
-DWORD WINAPI URLMON_DllGetClassObject(REFCLSID rclsid, REFIID riid, LPVOID *ppv)
+HRESULT WINAPI URLMON_DllGetClassObject(REFCLSID rclsid, REFIID riid, LPVOID *ppv)
 {
     int i;
     IClassFactoryImpl *factory;


More information about the wine-patches mailing list