COBJMACROS patch 3
Francois Gouget
fgouget at free.fr
Thu Sep 30 19:51:52 CDT 2004
COBJMACROS is very C unfriendly as it requires the caller to define it
if it wants to use COM objects. The following check is much better as
it does the right thing automagically:
#if !defined (__cplusplus) || defined(CINTERFACE)
So for internal interface, let's use the C friendly check instead of
COBJMACROS. This way we'll have fewer '#define COBJMACROS' to sprinkle
through the code.
Changelog:
* dlls/dplayx/dplaysp.h
dlls/dplayx/lobbysp.h
include/dsdriver.h
include/wine/wined3d_interface.h
Don't use COBJMACROS on internal interfaces.
--
Francois Gouget fgouget at free.fr http://fgouget.free.fr/
Avoid the Gates of Hell - use Linux.
-------------- next part --------------
Index: dlls/dplayx/dplaysp.h
===================================================================
RCS file: /var/cvs/wine/dlls/dplayx/dplaysp.h,v
retrieving revision 1.14
diff -u -r1.14 dplaysp.h
--- dlls/dplayx/dplaysp.h 12 Aug 2004 03:33:30 -0000 1.14
+++ dlls/dplayx/dplaysp.h 30 Sep 2004 18:26:05 -0000
@@ -78,7 +78,7 @@
/* NOTE: The microsoft provided header file doesn't have these access
* functions
*/
-#ifdef COBJMACROS
+#if !defined (__cplusplus) || defined(CINTERFACE)
/*** IUnknown methods ***/
#define IDirectPlaySP_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
#define IDirectPlaySP_AddRef(p) (p)->lpVtbl->AddRef(p)
Index: dlls/dplayx/lobbysp.h
===================================================================
RCS file: /var/cvs/wine/dlls/dplayx/lobbysp.h,v
retrieving revision 1.9
diff -u -r1.9 lobbysp.h
--- dlls/dplayx/lobbysp.h 12 Aug 2004 03:33:30 -0000 1.9
+++ dlls/dplayx/lobbysp.h 30 Sep 2004 18:27:32 -0000
@@ -483,7 +483,7 @@
DECLARE_INTERFACE_(IDPLobbySP,IUnknown) { IDPLobbySP_METHODS };
#undef INTERFACE
-#ifdef COBJMACROS
+#if !defined (__cplusplus) || defined(CINTERFACE)
/*** IUnknown methods ***/
#define IDPLobbySP_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
#define IDPLobbySP_AddRef(p) (p)->lpVtbl->AddRef(p)
Index: include/dsdriver.h
===================================================================
RCS file: /var/cvs/wine/include/dsdriver.h,v
retrieving revision 1.10
diff -u -r1.10 dsdriver.h
--- include/dsdriver.h 12 Aug 2004 03:33:30 -0000 1.10
+++ include/dsdriver.h 30 Sep 2004 18:29:26 -0000
@@ -144,7 +144,7 @@
DECLARE_INTERFACE_(IDsDriver,IUnknown) { IDsDriver_METHODS };
#undef INTERFACE
-#ifdef COBJMACROS
+#if !defined (__cplusplus) || defined(CINTERFACE)
/*** IUnknown methods ***/
#define IDsDriver_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
#define IDsDriver_AddRef(p) (p)->lpVtbl->AddRef(p)
@@ -176,7 +176,7 @@
DECLARE_INTERFACE_(IDsDriverBuffer,IUnknown) { IDsDriverBuffer_METHODS };
#undef INTERFACE
-#ifdef COBJMACROS
+#if !defined (__cplusplus) || defined(CINTERFACE)
/*** IUnknown methods ***/
#define IDsDriverBuffer_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
#define IDsDriverBuffer_AddRef(p) (p)->lpVtbl->AddRef(p)
@@ -205,7 +205,7 @@
DECLARE_INTERFACE_(IDsDriverPropertySet,IUnknown) { IDsDriverPropertySet_METHODS };
#undef INTERFACE
-#ifdef COBJMACROS
+#if !defined (__cplusplus) || defined(CINTERFACE)
/*** IUnknown methods ***/
#define IDsDriverPropertySet_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
#define IDsDriverPropertySet_AddRef(p) (p)->lpVtbl->AddRef(p)
@@ -261,7 +261,7 @@
DECLARE_INTERFACE_(IDsDriverNotify,IUnknown) { IDsDriverNotify_METHODS };
#undef INTERFACE
-#ifdef COBJMACROS
+#if !defined (__cplusplus) || defined(CINTERFACE)
/*** IUnknown methods ***/
#define IDsDriverNotify_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
#define IDsDriverNotify_AddRef(p) (p)->lpVtbl->AddRef(p)
@@ -284,7 +284,7 @@
DECLARE_INTERFACE_(IDsCaptureDriver,IUnknown) { IDsCaptureDriver_METHODS };
#undef INTERFACE
-#ifdef COBJMACROS
+#if !defined (__cplusplus) || defined(CINTERFACE)
/*** IUnknown methods ***/
#define IDsCaptureDriver_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
#define IDsCaptureDriver_AddRef(p) (p)->lpVtbl->AddRef(p)
@@ -313,7 +313,7 @@
DECLARE_INTERFACE_(IDsCaptureDriverBuffer,IUnknown) { IDsCaptureDriverBuffer_METHODS };
#undef INTERFACE
-#ifdef COBJMACROS
+#if !defined (__cplusplus) || defined(CINTERFACE)
/*** IUnknown methods ***/
#define IDsCaptureDriverBuffer_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
#define IDsCaptureDriverBuffer_AddRef(p) (p)->lpVtbl->AddRef(p)
Index: include/wine/wined3d_interface.h
===================================================================
RCS file: /var/cvs/wine/include/wine/wined3d_interface.h,v
retrieving revision 1.4
diff -u -r1.4 wined3d_interface.h
--- include/wine/wined3d_interface.h 29 Sep 2004 21:26:47 -0000 1.4
+++ include/wine/wined3d_interface.h 30 Sep 2004 13:06:25 -0000
@@ -74,7 +74,7 @@
DECLARE_INTERFACE_(IWineD3D,IUnknown) { IWineD3D_METHODS };
#undef INTERFACE
-#ifdef COBJMACROS
+#if !defined(__cplusplus) || defined(CINTERFACE)
/*** IUnknown methods ***/
#define IWineD3D_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
#define IWineD3D_AddRef(p) (p)->lpVtbl->AddRef(p)
More information about the wine-patches
mailing list