Commit in reactos/lib/rpcrt4 on MAIN
cproxy.c+5-31.2 -> 1.3
cpsf.c+1-11.2 -> 1.3
ndr_ole.c+2-21.1 -> 1.2
+8-6
3 modified files
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.

reactos/lib/rpcrt4
cproxy.c 1.2 -> 1.3
diff -u -r1.2 -r1.3
--- cproxy.c	16 Jun 2004 18:21:24 -0000	1.2
+++ cproxy.c	14 Aug 2004 20:09:12 -0000	1.3
@@ -41,7 +41,7 @@
 /* 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 @@
   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 @@
   This->pChannel = NULL;
 }
 
-static ICOM_VTABLE(IRpcProxyBuffer) StdProxy_Vtbl =
+static IRpcProxyBufferVtbl StdProxy_Vtbl =
 {
   ICOM_MSVTABLE_COMPAT_DummyRTTIVALUE
   StdProxy_QueryInterface,

reactos/lib/rpcrt4
cpsf.c 1.2 -> 1.3
diff -u -r1.2 -r1.3
--- cpsf.c	16 Jun 2004 18:21:24 -0000	1.2
+++ cpsf.c	14 Aug 2004 20:09:12 -0000	1.3
@@ -114,7 +114,7 @@
                                   ProxyInfo->pStubVtblList[Index], iface, ppStub);
 }
 
-static ICOM_VTABLE(IPSFactoryBuffer) CStdPSFactory_Vtbl =
+static IPSFactoryBufferVtbl CStdPSFactory_Vtbl =
 {
   ICOM_MSVTABLE_COMPAT_DummyRTTIVALUE
   CStdPSFactory_QueryInterface,

reactos/lib/rpcrt4
ndr_ole.c 1.1 -> 1.2
diff -u -r1.1 -r1.2
--- ndr_ole.c	4 May 2004 20:06:26 -0000	1.1
+++ ndr_ole.c	14 Aug 2004 20:09:12 -0000	1.2
@@ -77,7 +77,7 @@
  * (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 @@
   return S_OK;
 }
 
-static ICOM_VTABLE(IStream) RpcStream_Vtbl =
+static IStreamVtbl RpcStream_Vtbl =
 {
   ICOM_MSVTABLE_COMPAT_DummyRTTIVALUE
   RpcStream_QueryInterface,
CVSspam 0.2.8