From 86eb12c5fcca66658afa8be25199cc72dd417f10 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?G=C3=A9=20van=20Geldorp?= Date: Sat, 14 Aug 2004 20:09:12 +0000 Subject: [PATCH] Sync to Wine-20040813: Alexandre Julliard - Moved ICOM_THIS_MULTI definition out of objbase.h and into the files that use it. - Get rid of the non-standard ICOM_VTABLE macro. - Get rid of the non-standard ICOM_VFIELD macro. svn path=/trunk/; revision=10537 --- reactos/lib/rpcrt4/cproxy.c | 8 +++++--- reactos/lib/rpcrt4/cpsf.c | 2 +- reactos/lib/rpcrt4/ndr_ole.c | 4 ++-- 3 files changed, 8 insertions(+), 6 deletions(-) diff --git a/reactos/lib/rpcrt4/cproxy.c b/reactos/lib/rpcrt4/cproxy.c index c36baf94558..10639cbfedf 100644 --- a/reactos/lib/rpcrt4/cproxy.c +++ b/reactos/lib/rpcrt4/cproxy.c @@ -41,7 +41,7 @@ struct StublessThunk; /* I don't know what MS's std proxy structure looks like, so this probably doesn't match, but that shouldn't matter */ typedef struct { - ICOM_VTABLE(IRpcProxyBuffer) *lpVtbl; + IRpcProxyBufferVtbl *lpVtbl; LPVOID *PVtbl; DWORD RefCount; const MIDL_STUBLESS_PROXY_INFO *stubless; @@ -53,7 +53,9 @@ typedef struct { struct StublessThunk *thunks; } StdProxyImpl; -static ICOM_VTABLE(IRpcProxyBuffer) StdProxy_Vtbl; +static IRpcProxyBufferVtbl StdProxy_Vtbl; + +#define ICOM_THIS_MULTI(impl,field,iface) impl* const This=(impl*)((char*)(iface) - offsetof(impl,field)) /* How the Windows stubless proxy thunks work is explained at * http://msdn.microsoft.com/library/en-us/dnmsj99/html/com0199.asp, @@ -265,7 +267,7 @@ static VOID WINAPI StdProxy_Disconnect(LPRPCPROXYBUFFER iface) This->pChannel = NULL; } -static ICOM_VTABLE(IRpcProxyBuffer) StdProxy_Vtbl = +static IRpcProxyBufferVtbl StdProxy_Vtbl = { ICOM_MSVTABLE_COMPAT_DummyRTTIVALUE StdProxy_QueryInterface, diff --git a/reactos/lib/rpcrt4/cpsf.c b/reactos/lib/rpcrt4/cpsf.c index ba0db037e29..136232073e3 100644 --- a/reactos/lib/rpcrt4/cpsf.c +++ b/reactos/lib/rpcrt4/cpsf.c @@ -114,7 +114,7 @@ static HRESULT WINAPI CStdPSFactory_CreateStub(LPPSFACTORYBUFFER iface, ProxyInfo->pStubVtblList[Index], iface, ppStub); } -static ICOM_VTABLE(IPSFactoryBuffer) CStdPSFactory_Vtbl = +static IPSFactoryBufferVtbl CStdPSFactory_Vtbl = { ICOM_MSVTABLE_COMPAT_DummyRTTIVALUE CStdPSFactory_QueryInterface, diff --git a/reactos/lib/rpcrt4/ndr_ole.c b/reactos/lib/rpcrt4/ndr_ole.c index 26ddb25c56e..0a43712370d 100644 --- a/reactos/lib/rpcrt4/ndr_ole.c +++ b/reactos/lib/rpcrt4/ndr_ole.c @@ -77,7 +77,7 @@ static HMODULE LoadCOM(void) * (which also implements the MInterfacePointer structure) */ typedef struct RpcStreamImpl { - ICOM_VFIELD(IStream); + IStreamVtbl *lpVtbl; DWORD RefCount; PMIDL_STUB_MESSAGE pMsg; LPDWORD size; @@ -180,7 +180,7 @@ static HRESULT WINAPI RpcStream_SetSize(LPSTREAM iface, return S_OK; } -static ICOM_VTABLE(IStream) RpcStream_Vtbl = +static IStreamVtbl RpcStream_Vtbl = { ICOM_MSVTABLE_COMPAT_DummyRTTIVALUE RpcStream_QueryInterface,