From 5693a82971491e8c65046be599683394f1138fe5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?G=C3=A9=20van=20Geldorp?= Date: Sun, 19 Sep 2004 10:20:48 +0000 Subject: [PATCH] Sync to Wine-20040914: Alexandre Julliard: - Added recursive idl target to allow updating idl files private to a dll. - Get rid of the non-standard ICOM_THIS macro. - Get rid of the no longer used ICOM_MSVTABLE_COMPAT_DummyRTTIVALUE macro. - Inline functions don't need WINE_UNUSED. - Don't define BEGIN_INTERFACE in unknwn.h. Mike McCormack - Fix some warnings found with -Wsign-compare. Francois Gouget - Move the PROPVARIANT declaration from objidl.idl to propidl.idl. - Move related API declarations from individual C files to propidl.idl. - Remove uneeded include of propidl.h in the propvariant.c test. Robert Shearman - Fix PropVariantCopy for VT_LPSTR and VT_LPWSTR. - Test case VT_BSTR, VT_LPSTR and VT_LPWSTR. - Fix PropVariantClear to reject invalid types. - Don't crash on NULL pointers. - Add test case. svn path=/trunk/; revision=10906 --- reactos/lib/ole32/Makefile.in | 10 +++ reactos/lib/ole32/antimoniker.c | 8 +- reactos/lib/ole32/bindctx.c | 25 +++---- reactos/lib/ole32/clipboard.c | 28 ++++--- reactos/lib/ole32/compobj.c | 6 +- reactos/lib/ole32/compobj_private.h | 2 - reactos/lib/ole32/compositemoniker.c | 27 +++---- reactos/lib/ole32/datacache.c | 6 -- reactos/lib/ole32/dcom.h | 12 ++- reactos/lib/ole32/defaulthandler.c | 4 - reactos/lib/ole32/errorinfo.c | 5 +- reactos/lib/ole32/filemoniker.c | 24 +++--- reactos/lib/ole32/ftmarshal.c | 8 +- reactos/lib/ole32/git.c | 2 - reactos/lib/ole32/hglobalstream.c | 1 - reactos/lib/ole32/ifs.c | 30 ++++---- reactos/lib/ole32/itemmoniker.c | 26 +++---- reactos/lib/ole32/marshal.c | 6 +- reactos/lib/ole32/memlockbytes.c | 1 - reactos/lib/ole32/moniker.c | 21 +++--- reactos/lib/ole32/ole16.c | 18 ++--- reactos/lib/ole32/ole2.c | 108 +++++++++++++++++++++------ reactos/lib/ole32/oleobj.c | 34 ++++----- reactos/lib/ole32/oleproxy.c | 14 ++-- reactos/lib/ole32/rpc.c | 9 +-- reactos/lib/ole32/stg_stream.c | 1 - reactos/lib/ole32/storage.c | 38 +++++----- reactos/lib/ole32/storage32.c | 23 +++--- 28 files changed, 263 insertions(+), 234 deletions(-) diff --git a/reactos/lib/ole32/Makefile.in b/reactos/lib/ole32/Makefile.in index 1bbe808ad65..c277fa9a7b8 100644 --- a/reactos/lib/ole32/Makefile.in +++ b/reactos/lib/ole32/Makefile.in @@ -61,8 +61,18 @@ RC_BINARIES = \ drag_move.cur \ nodrop.cur +IDL_SRCS = \ + dcom.idl + SUBDIRS = tests @MAKE_DLL_RULES@ +.SUFFIXES: .idl .h + +.idl.h: + $(WIDL) $(IDLFLAGS) -b -h -H $@ $< + +idl: $(IDL_SRCS:.idl=.h) + ### Dependencies: diff --git a/reactos/lib/ole32/antimoniker.c b/reactos/lib/ole32/antimoniker.c index c664cb5922d..89f767e0de6 100644 --- a/reactos/lib/ole32/antimoniker.c +++ b/reactos/lib/ole32/antimoniker.c @@ -106,7 +106,6 @@ HRESULT WINAPI AntiMonikerImpl_Destroy(AntiMonikerImpl* iface); /* IPersistStream and IMoniker functions. */ static IMonikerVtbl VT_AntiMonikerImpl = { - ICOM_MSVTABLE_COMPAT_DummyRTTIVALUE AntiMonikerImpl_QueryInterface, AntiMonikerImpl_AddRef, AntiMonikerImpl_Release, @@ -136,7 +135,6 @@ static IMonikerVtbl VT_AntiMonikerImpl = /* Virtual function table for the IROTData class. */ static IROTDataVtbl VT_ROTDataImpl = { - ICOM_MSVTABLE_COMPAT_DummyRTTIVALUE AntiMonikerROTDataImpl_QueryInterface, AntiMonikerROTDataImpl_AddRef, AntiMonikerROTDataImpl_Release, @@ -148,7 +146,7 @@ static IROTDataVtbl VT_ROTDataImpl = *******************************************************************************/ HRESULT WINAPI AntiMonikerImpl_QueryInterface(IMoniker* iface,REFIID riid,void** ppvObject) { - ICOM_THIS(AntiMonikerImpl,iface); + AntiMonikerImpl *This = (AntiMonikerImpl *)iface; TRACE("(%p,%p,%p)\n",This,riid,ppvObject); @@ -184,7 +182,7 @@ HRESULT WINAPI AntiMonikerImpl_QueryInterface(IMoniker* iface,REFIID riid,void** ******************************************************************************/ ULONG WINAPI AntiMonikerImpl_AddRef(IMoniker* iface) { - ICOM_THIS(AntiMonikerImpl,iface); + AntiMonikerImpl *This = (AntiMonikerImpl *)iface; TRACE("(%p)\n",This); @@ -196,7 +194,7 @@ ULONG WINAPI AntiMonikerImpl_AddRef(IMoniker* iface) ******************************************************************************/ ULONG WINAPI AntiMonikerImpl_Release(IMoniker* iface) { - ICOM_THIS(AntiMonikerImpl,iface); + AntiMonikerImpl *This = (AntiMonikerImpl *)iface; TRACE("(%p)\n",This); diff --git a/reactos/lib/ole32/bindctx.c b/reactos/lib/ole32/bindctx.c index 19642b0de68..fcf98bccd19 100644 --- a/reactos/lib/ole32/bindctx.c +++ b/reactos/lib/ole32/bindctx.c @@ -85,7 +85,6 @@ HRESULT WINAPI BindCtxImpl_GetObjectIndex(BindCtxImpl* This,IUnknown* punk,LPOLE /* Virtual function table for the BindCtx class. */ static IBindCtxVtbl VT_BindCtxImpl = { - ICOM_MSVTABLE_COMPAT_DummyRTTIVALUE BindCtxImpl_QueryInterface, BindCtxImpl_AddRef, BindCtxImpl_Release, @@ -106,7 +105,7 @@ static IBindCtxVtbl VT_BindCtxImpl = *******************************************************************************/ HRESULT WINAPI BindCtxImpl_QueryInterface(IBindCtx* iface,REFIID riid,void** ppvObject) { - ICOM_THIS(BindCtxImpl,iface); + BindCtxImpl *This = (BindCtxImpl *)iface; TRACE("(%p,%p,%p)\n",This,riid,ppvObject); @@ -139,7 +138,7 @@ HRESULT WINAPI BindCtxImpl_QueryInterface(IBindCtx* iface,REFIID riid,void** ppv ******************************************************************************/ ULONG WINAPI BindCtxImpl_AddRef(IBindCtx* iface) { - ICOM_THIS(BindCtxImpl,iface); + BindCtxImpl *This = (BindCtxImpl *)iface; TRACE("(%p)\n",This); @@ -151,7 +150,7 @@ ULONG WINAPI BindCtxImpl_AddRef(IBindCtx* iface) ******************************************************************************/ ULONG WINAPI BindCtxImpl_Release(IBindCtx* iface) { - ICOM_THIS(BindCtxImpl,iface); + BindCtxImpl *This = (BindCtxImpl *)iface; TRACE("(%p)\n",This); @@ -225,7 +224,7 @@ HRESULT WINAPI BindCtxImpl_Destroy(BindCtxImpl* This) ******************************************************************************/ HRESULT WINAPI BindCtxImpl_RegisterObjectBound(IBindCtx* iface,IUnknown* punk) { - ICOM_THIS(BindCtxImpl,iface); + BindCtxImpl *This = (BindCtxImpl *)iface; DWORD lastIndex=This->bindCtxTableLastIndex; TRACE("(%p,%p)\n",This,punk); @@ -265,7 +264,7 @@ HRESULT WINAPI BindCtxImpl_RevokeObjectBound(IBindCtx* iface, IUnknown* punk) { DWORD index,j; - ICOM_THIS(BindCtxImpl,iface); + BindCtxImpl *This = (BindCtxImpl *)iface; TRACE("(%p,%p)\n",This,punk); @@ -294,7 +293,7 @@ HRESULT WINAPI BindCtxImpl_ReleaseBoundObjects(IBindCtx* iface) { DWORD i; - ICOM_THIS(BindCtxImpl,iface); + BindCtxImpl *This = (BindCtxImpl *)iface; TRACE("(%p)\n",This); @@ -316,7 +315,7 @@ HRESULT WINAPI BindCtxImpl_ReleaseBoundObjects(IBindCtx* iface) ******************************************************************************/ HRESULT WINAPI BindCtxImpl_SetBindOptions(IBindCtx* iface,BIND_OPTS *pbindopts) { - ICOM_THIS(BindCtxImpl,iface); + BindCtxImpl *This = (BindCtxImpl *)iface; TRACE("(%p,%p)\n",This,pbindopts); @@ -337,7 +336,7 @@ HRESULT WINAPI BindCtxImpl_SetBindOptions(IBindCtx* iface,BIND_OPTS *pbindopts) ******************************************************************************/ HRESULT WINAPI BindCtxImpl_GetBindOptions(IBindCtx* iface,BIND_OPTS *pbindopts) { - ICOM_THIS(BindCtxImpl,iface); + BindCtxImpl *This = (BindCtxImpl *)iface; TRACE("(%p,%p)\n",This,pbindopts); @@ -360,7 +359,7 @@ HRESULT WINAPI BindCtxImpl_GetRunningObjectTable(IBindCtx* iface,IRunningObjectT { HRESULT res; - ICOM_THIS(BindCtxImpl,iface); + BindCtxImpl *This = (BindCtxImpl *)iface; TRACE("(%p,%p)\n",This,pprot); @@ -378,7 +377,7 @@ HRESULT WINAPI BindCtxImpl_GetRunningObjectTable(IBindCtx* iface,IRunningObjectT HRESULT WINAPI BindCtxImpl_RegisterObjectParam(IBindCtx* iface,LPOLESTR pszkey, IUnknown* punk) { DWORD index=0; - ICOM_THIS(BindCtxImpl,iface); + BindCtxImpl *This = (BindCtxImpl *)iface; TRACE("(%p,%s,%p)\n",This,debugstr_w(pszkey),punk); @@ -436,7 +435,7 @@ HRESULT WINAPI BindCtxImpl_RegisterObjectParam(IBindCtx* iface,LPOLESTR pszkey, HRESULT WINAPI BindCtxImpl_GetObjectParam(IBindCtx* iface,LPOLESTR pszkey, IUnknown** punk) { DWORD index; - ICOM_THIS(BindCtxImpl,iface); + BindCtxImpl *This = (BindCtxImpl *)iface; TRACE("(%p,%s,%p)\n",This,debugstr_w(pszkey),punk); @@ -462,7 +461,7 @@ HRESULT WINAPI BindCtxImpl_RevokeObjectParam(IBindCtx* iface,LPOLESTR ppenum) { DWORD index,j; - ICOM_THIS(BindCtxImpl,iface); + BindCtxImpl *This = (BindCtxImpl *)iface; TRACE("(%p,%s)\n",This,debugstr_w(ppenum)); diff --git a/reactos/lib/ole32/clipboard.c b/reactos/lib/ole32/clipboard.c index 6a58127bfed..48c92e0fce9 100644 --- a/reactos/lib/ole32/clipboard.c +++ b/reactos/lib/ole32/clipboard.c @@ -250,7 +250,6 @@ static HRESULT WINAPI OLEClipbrd_IEnumFORMATETC_Clone(LPENUMFORMATETC iface, LPE */ static IDataObjectVtbl OLEClipbrd_IDataObject_VTable = { - ICOM_MSVTABLE_COMPAT_DummyRTTIVALUE OLEClipbrd_IDataObject_QueryInterface, OLEClipbrd_IDataObject_AddRef, OLEClipbrd_IDataObject_Release, @@ -270,7 +269,6 @@ static IDataObjectVtbl OLEClipbrd_IDataObject_VTable = */ static struct IEnumFORMATETCVtbl efvt = { - ICOM_MSVTABLE_COMPAT_DummyRTTIVALUE OLEClipbrd_IEnumFORMATETC_QueryInterface, OLEClipbrd_IEnumFORMATETC_AddRef, OLEClipbrd_IEnumFORMATETC_Release, @@ -1109,7 +1107,7 @@ static HRESULT WINAPI OLEClipbrd_IDataObject_QueryInterface( /* * Declare "This" pointer */ - ICOM_THIS(OLEClipbrd, iface); + OLEClipbrd *This = (OLEClipbrd *)iface; TRACE("(%p)->(\n\tIID:\t%s,%p)\n",This,debugstr_guid(riid),ppvObject); /* @@ -1160,7 +1158,7 @@ static ULONG WINAPI OLEClipbrd_IDataObject_AddRef( /* * Declare "This" pointer */ - ICOM_THIS(OLEClipbrd, iface); + OLEClipbrd *This = (OLEClipbrd *)iface; TRACE("(%p)->(count=%lu)\n",This, This->ref); @@ -1180,7 +1178,7 @@ static ULONG WINAPI OLEClipbrd_IDataObject_Release( /* * Declare "This" pointer */ - ICOM_THIS(OLEClipbrd, iface); + OLEClipbrd *This = (OLEClipbrd *)iface; TRACE("(%p)->(count=%lu)\n",This, This->ref); @@ -1222,7 +1220,7 @@ static HRESULT WINAPI OLEClipbrd_IDataObject_GetData( /* * Declare "This" pointer */ - ICOM_THIS(OLEClipbrd, iface); + OLEClipbrd *This = (OLEClipbrd *)iface; TRACE("(%p,%p,%p)\n", iface, pformatetcIn, pmedium); @@ -1322,7 +1320,7 @@ static HRESULT WINAPI OLEClipbrd_IDataObject_QueryGetData( /* * Declare "This" pointer */ - ICOM_THIS(OLEClipbrd, iface); + OLEClipbrd *This = (OLEClipbrd *)iface; TRACE("(%p, %p)\n", iface, pformatetc); @@ -1412,7 +1410,7 @@ static HRESULT WINAPI OLEClipbrd_IDataObject_EnumFormatEtc( /* * Declare "This" pointer */ - ICOM_THIS(OLEClipbrd, iface); + OLEClipbrd *This = (OLEClipbrd *)iface; TRACE("(%p, %lx, %p)\n", iface, dwDirection, ppenumFormatEtc); @@ -1605,7 +1603,7 @@ LPENUMFORMATETC OLEClipbrd_IEnumFORMATETC_Construct(UINT cfmt, const FORMATETC a static HRESULT WINAPI OLEClipbrd_IEnumFORMATETC_QueryInterface (LPENUMFORMATETC iface, REFIID riid, LPVOID* ppvObj) { - ICOM_THIS(IEnumFORMATETCImpl,iface); + IEnumFORMATETCImpl *This = (IEnumFORMATETCImpl *)iface; TRACE("(%p)->(\n\tIID:\t%s,%p)\n",This,debugstr_guid(riid),ppvObj); @@ -1647,7 +1645,7 @@ static HRESULT WINAPI OLEClipbrd_IEnumFORMATETC_QueryInterface */ static ULONG WINAPI OLEClipbrd_IEnumFORMATETC_AddRef(LPENUMFORMATETC iface) { - ICOM_THIS(IEnumFORMATETCImpl,iface); + IEnumFORMATETCImpl *This = (IEnumFORMATETCImpl *)iface; TRACE("(%p)->(count=%lu)\n",This, This->ref); if (This->pUnkDataObj) @@ -1663,7 +1661,7 @@ static ULONG WINAPI OLEClipbrd_IEnumFORMATETC_AddRef(LPENUMFORMATETC iface) */ static ULONG WINAPI OLEClipbrd_IEnumFORMATETC_Release(LPENUMFORMATETC iface) { - ICOM_THIS(IEnumFORMATETCImpl,iface); + IEnumFORMATETCImpl *This = (IEnumFORMATETCImpl *)iface; LPMALLOC pIMalloc; TRACE("(%p)->(count=%lu)\n",This, This->ref); @@ -1695,7 +1693,7 @@ static ULONG WINAPI OLEClipbrd_IEnumFORMATETC_Release(LPENUMFORMATETC iface) static HRESULT WINAPI OLEClipbrd_IEnumFORMATETC_Next (LPENUMFORMATETC iface, ULONG celt, FORMATETC *rgelt, ULONG *pceltFethed) { - ICOM_THIS(IEnumFORMATETCImpl,iface); + IEnumFORMATETCImpl *This = (IEnumFORMATETCImpl *)iface; UINT cfetch; HRESULT hres = S_FALSE; @@ -1733,7 +1731,7 @@ static HRESULT WINAPI OLEClipbrd_IEnumFORMATETC_Next */ static HRESULT WINAPI OLEClipbrd_IEnumFORMATETC_Skip(LPENUMFORMATETC iface, ULONG celt) { - ICOM_THIS(IEnumFORMATETCImpl,iface); + IEnumFORMATETCImpl *This = (IEnumFORMATETCImpl *)iface; TRACE("(%p)->(num=%lu)\n", This, celt); This->posFmt += celt; @@ -1752,7 +1750,7 @@ static HRESULT WINAPI OLEClipbrd_IEnumFORMATETC_Skip(LPENUMFORMATETC iface, ULON */ static HRESULT WINAPI OLEClipbrd_IEnumFORMATETC_Reset(LPENUMFORMATETC iface) { - ICOM_THIS(IEnumFORMATETCImpl,iface); + IEnumFORMATETCImpl *This = (IEnumFORMATETCImpl *)iface; TRACE("(%p)->()\n", This); This->posFmt = 0; @@ -1767,7 +1765,7 @@ static HRESULT WINAPI OLEClipbrd_IEnumFORMATETC_Reset(LPENUMFORMATETC iface) static HRESULT WINAPI OLEClipbrd_IEnumFORMATETC_Clone (LPENUMFORMATETC iface, LPENUMFORMATETC* ppenum) { - ICOM_THIS(IEnumFORMATETCImpl,iface); + IEnumFORMATETCImpl *This = (IEnumFORMATETCImpl *)iface; HRESULT hr = S_OK; TRACE("(%p)->(ppenum=%p)\n", This, ppenum); diff --git a/reactos/lib/ole32/compobj.c b/reactos/lib/ole32/compobj.c index 685715620f5..3305cc96aad 100644 --- a/reactos/lib/ole32/compobj.c +++ b/reactos/lib/ole32/compobj.c @@ -1290,7 +1290,7 @@ end: * * Reads a registry value and expands it when necessary */ -HRESULT compobj_RegReadPath(char * keyname, char * valuename, char * dst, int dstlen) +HRESULT compobj_RegReadPath(char * keyname, char * valuename, char * dst, DWORD dstlen) { HRESULT hres; HKEY key; @@ -1303,7 +1303,7 @@ HRESULT compobj_RegReadPath(char * keyname, char * valuename, char * dst, int ds if (keytype == REG_EXPAND_SZ) { if (dstlen <= ExpandEnvironmentStringsA(src, dst, dstlen)) hres = ERROR_MORE_DATA; } else { - strncpy(dst, src, dstlen); + lstrcpynA(dst, src, dstlen); } } RegCloseKey (key); @@ -1589,7 +1589,7 @@ HRESULT WINAPI CoCreateInstanceEx( IUnknown* pUnk = NULL; HRESULT hr; ULONG index; - int successCount = 0; + ULONG successCount = 0; /* * Sanity check diff --git a/reactos/lib/ole32/compobj_private.h b/reactos/lib/ole32/compobj_private.h index ee4e33b4c58..32d17727435 100644 --- a/reactos/lib/ole32/compobj_private.h +++ b/reactos/lib/ole32/compobj_private.h @@ -171,13 +171,11 @@ HRESULT WINAPI __CLSIDFromStringA(LPCSTR idstr, CLSID *id); * Per-thread values are stored in the TEB on offset 0xF80, * see http://www.microsoft.com/msj/1099/bugslayer/bugslayer1099.htm */ -static inline APARTMENT* COM_CurrentInfo(void) WINE_UNUSED; static inline APARTMENT* COM_CurrentInfo(void) { APARTMENT* apt = NtCurrentTeb()->ReservedForOle; return apt; } -static inline APARTMENT* COM_CurrentApt(void) WINE_UNUSED; static inline APARTMENT* COM_CurrentApt(void) { APARTMENT* apt = COM_CurrentInfo(); diff --git a/reactos/lib/ole32/compositemoniker.c b/reactos/lib/ole32/compositemoniker.c index 5743ef4f61e..19ea33009b2 100644 --- a/reactos/lib/ole32/compositemoniker.c +++ b/reactos/lib/ole32/compositemoniker.c @@ -150,7 +150,6 @@ HRESULT WINAPI EnumMonikerImpl_CreateEnumMoniker(IMoniker** tabMoniker,ULONG tab static IMonikerVtbl VT_CompositeMonikerImpl = { - ICOM_MSVTABLE_COMPAT_DummyRTTIVALUE CompositeMonikerImpl_QueryInterface, CompositeMonikerImpl_AddRef, CompositeMonikerImpl_Release, @@ -180,7 +179,6 @@ static IMonikerVtbl VT_CompositeMonikerImpl = /* Virtual function table for the IROTData class. */ static IROTDataVtbl VT_ROTDataImpl = { - ICOM_MSVTABLE_COMPAT_DummyRTTIVALUE CompositeMonikerROTDataImpl_QueryInterface, CompositeMonikerROTDataImpl_AddRef, CompositeMonikerROTDataImpl_Release, @@ -191,7 +189,6 @@ static IROTDataVtbl VT_ROTDataImpl = /* Virtual function table for the IROTData class */ static IEnumMonikerVtbl VT_EnumMonikerImpl = { - ICOM_MSVTABLE_COMPAT_DummyRTTIVALUE EnumMonikerImpl_QueryInterface, EnumMonikerImpl_AddRef, EnumMonikerImpl_Release, @@ -206,7 +203,7 @@ static IEnumMonikerVtbl VT_EnumMonikerImpl = *******************************************************************************/ HRESULT WINAPI CompositeMonikerImpl_QueryInterface(IMoniker* iface,REFIID riid,void** ppvObject) { - ICOM_THIS(CompositeMonikerImpl,iface); + CompositeMonikerImpl *This = (CompositeMonikerImpl *)iface; TRACE("(%p,%p,%p)\n",This,riid,ppvObject); @@ -242,7 +239,7 @@ HRESULT WINAPI CompositeMonikerImpl_QueryInterface(IMoniker* iface,REFIID riid,v ******************************************************************************/ ULONG WINAPI CompositeMonikerImpl_AddRef(IMoniker* iface) { - ICOM_THIS(CompositeMonikerImpl,iface); + CompositeMonikerImpl *This = (CompositeMonikerImpl *)iface; TRACE("(%p)\n",This); @@ -254,7 +251,7 @@ ULONG WINAPI CompositeMonikerImpl_AddRef(IMoniker* iface) ******************************************************************************/ ULONG WINAPI CompositeMonikerImpl_Release(IMoniker* iface) { - ICOM_THIS(CompositeMonikerImpl,iface); + CompositeMonikerImpl *This = (CompositeMonikerImpl *)iface; ULONG i; TRACE("(%p)\n",This); @@ -314,7 +311,7 @@ HRESULT WINAPI CompositeMonikerImpl_Load(IMoniker* iface,IStream* pStm) CLSID clsid; WCHAR string[1]={0}; - ICOM_THIS(CompositeMonikerImpl,iface); + CompositeMonikerImpl *This = (CompositeMonikerImpl *)iface; TRACE("(%p,%p)\n",iface,pStm); @@ -815,7 +812,7 @@ HRESULT WINAPI CompositeMonikerImpl_ComposeWith(IMoniker* iface, ******************************************************************************/ HRESULT WINAPI CompositeMonikerImpl_Enum(IMoniker* iface,BOOL fForward, IEnumMoniker** ppenumMoniker) { - ICOM_THIS(CompositeMonikerImpl,iface); + CompositeMonikerImpl *This = (CompositeMonikerImpl *)iface; TRACE("(%p,%d,%p)\n",iface,fForward,ppenumMoniker); @@ -1496,7 +1493,7 @@ HRESULT WINAPI CompositeMonikerROTDataImpl_GetComparaisonData(IROTData* iface, ******************************************************************************/ HRESULT WINAPI EnumMonikerImpl_QueryInterface(IEnumMoniker* iface,REFIID riid,void** ppvObject) { - ICOM_THIS(EnumMonikerImpl,iface); + EnumMonikerImpl *This = (EnumMonikerImpl *)iface; TRACE("(%p,%p,%p)\n",This,riid,ppvObject); @@ -1526,7 +1523,7 @@ HRESULT WINAPI EnumMonikerImpl_QueryInterface(IEnumMoniker* iface,REFIID riid,vo ******************************************************************************/ ULONG WINAPI EnumMonikerImpl_AddRef(IEnumMoniker* iface) { - ICOM_THIS(EnumMonikerImpl,iface); + EnumMonikerImpl *This = (EnumMonikerImpl *)iface; TRACE("(%p)\n",This); @@ -1539,7 +1536,7 @@ ULONG WINAPI EnumMonikerImpl_AddRef(IEnumMoniker* iface) ******************************************************************************/ ULONG WINAPI EnumMonikerImpl_Release(IEnumMoniker* iface) { - ICOM_THIS(EnumMonikerImpl,iface); + EnumMonikerImpl *This = (EnumMonikerImpl *)iface; ULONG i ; TRACE("(%p)\n",This); @@ -1565,7 +1562,7 @@ ULONG WINAPI EnumMonikerImpl_Release(IEnumMoniker* iface) ******************************************************************************/ HRESULT WINAPI EnumMonikerImpl_Next(IEnumMoniker* iface,ULONG celt, IMoniker** rgelt, ULONG* pceltFethed){ - ICOM_THIS(EnumMonikerImpl,iface); + EnumMonikerImpl *This = (EnumMonikerImpl *)iface; ULONG i; /* retrieve the requested number of moniker from the current position */ @@ -1587,7 +1584,7 @@ HRESULT WINAPI EnumMonikerImpl_Next(IEnumMoniker* iface,ULONG celt, IMoniker** r ******************************************************************************/ HRESULT WINAPI EnumMonikerImpl_Skip(IEnumMoniker* iface,ULONG celt){ - ICOM_THIS(EnumMonikerImpl,iface); + EnumMonikerImpl *This = (EnumMonikerImpl *)iface; if ((This->currentPos+celt) >= This->tabSize) return S_FALSE; @@ -1602,7 +1599,7 @@ HRESULT WINAPI EnumMonikerImpl_Skip(IEnumMoniker* iface,ULONG celt){ ******************************************************************************/ HRESULT WINAPI EnumMonikerImpl_Reset(IEnumMoniker* iface){ - ICOM_THIS(EnumMonikerImpl,iface); + EnumMonikerImpl *This = (EnumMonikerImpl *)iface; This->currentPos=0; @@ -1614,7 +1611,7 @@ HRESULT WINAPI EnumMonikerImpl_Reset(IEnumMoniker* iface){ ******************************************************************************/ HRESULT WINAPI EnumMonikerImpl_Clone(IEnumMoniker* iface,IEnumMoniker** ppenum){ - ICOM_THIS(EnumMonikerImpl,iface); + EnumMonikerImpl *This = (EnumMonikerImpl *)iface; return EnumMonikerImpl_CreateEnumMoniker(This->tabMoniker,This->tabSize,This->currentPos,TRUE,ppenum); } diff --git a/reactos/lib/ole32/datacache.c b/reactos/lib/ole32/datacache.c index 75ff0d259a5..a5e2d7b3642 100644 --- a/reactos/lib/ole32/datacache.c +++ b/reactos/lib/ole32/datacache.c @@ -375,7 +375,6 @@ static HRESULT WINAPI DataCache_OnStop( */ static IUnknownVtbl DataCache_NDIUnknown_VTable = { - ICOM_MSVTABLE_COMPAT_DummyRTTIVALUE DataCache_NDIUnknown_QueryInterface, DataCache_NDIUnknown_AddRef, DataCache_NDIUnknown_Release @@ -383,7 +382,6 @@ static IUnknownVtbl DataCache_NDIUnknown_VTable = static IDataObjectVtbl DataCache_IDataObject_VTable = { - ICOM_MSVTABLE_COMPAT_DummyRTTIVALUE DataCache_IDataObject_QueryInterface, DataCache_IDataObject_AddRef, DataCache_IDataObject_Release, @@ -400,7 +398,6 @@ static IDataObjectVtbl DataCache_IDataObject_VTable = static IPersistStorageVtbl DataCache_IPersistStorage_VTable = { - ICOM_MSVTABLE_COMPAT_DummyRTTIVALUE DataCache_IPersistStorage_QueryInterface, DataCache_IPersistStorage_AddRef, DataCache_IPersistStorage_Release, @@ -415,7 +412,6 @@ static IPersistStorageVtbl DataCache_IPersistStorage_VTable = static IViewObject2Vtbl DataCache_IViewObject2_VTable = { - ICOM_MSVTABLE_COMPAT_DummyRTTIVALUE DataCache_IViewObject2_QueryInterface, DataCache_IViewObject2_AddRef, DataCache_IViewObject2_Release, @@ -430,7 +426,6 @@ static IViewObject2Vtbl DataCache_IViewObject2_VTable = static IOleCache2Vtbl DataCache_IOleCache2_VTable = { - ICOM_MSVTABLE_COMPAT_DummyRTTIVALUE DataCache_IOleCache2_QueryInterface, DataCache_IOleCache2_AddRef, DataCache_IOleCache2_Release, @@ -445,7 +440,6 @@ static IOleCache2Vtbl DataCache_IOleCache2_VTable = static IOleCacheControlVtbl DataCache_IOleCacheControl_VTable = { - ICOM_MSVTABLE_COMPAT_DummyRTTIVALUE DataCache_IOleCacheControl_QueryInterface, DataCache_IOleCacheControl_AddRef, DataCache_IOleCacheControl_Release, diff --git a/reactos/lib/ole32/dcom.h b/reactos/lib/ole32/dcom.h index 1194bbb8aa2..3ea35faaf13 100644 --- a/reactos/lib/ole32/dcom.h +++ b/reactos/lib/ole32/dcom.h @@ -226,7 +226,7 @@ struct IRemUnknown { const IRemUnknownVtbl* lpVtbl; }; struct IRemUnknownVtbl { - ICOM_MSVTABLE_COMPAT_FIELDS + BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( @@ -260,8 +260,10 @@ struct IRemUnknownVtbl { unsigned short cInterfaceRefs, REMINTERFACEREF* InterfaceRefs); + END_INTERFACE }; +#ifdef COBJMACROS /*** IUnknown methods ***/ #define IRemUnknown_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b) #define IRemUnknown_AddRef(p) (p)->lpVtbl->AddRef(p) @@ -270,11 +272,11 @@ struct IRemUnknownVtbl { #define IRemUnknown_RemQueryInterface(p,a,b,c,d,e) (p)->lpVtbl->RemQueryInterface(p,a,b,c,d,e) #define IRemUnknown_RemAddRef(p,a,b,c) (p)->lpVtbl->RemAddRef(p,a,b,c) #define IRemUnknown_RemRelease(p,a,b) (p)->lpVtbl->RemRelease(p,a,b) +#endif #endif #define IRemUnknown_METHODS \ - ICOM_MSVTABLE_COMPAT_FIELDS \ /*** IUnknown methods ***/ \ STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; \ STDMETHOD_(ULONG,AddRef)(THIS) PURE; \ @@ -349,7 +351,7 @@ struct IRemUnknown2 { const IRemUnknown2Vtbl* lpVtbl; }; struct IRemUnknown2Vtbl { - ICOM_MSVTABLE_COMPAT_FIELDS + BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( @@ -392,8 +394,10 @@ struct IRemUnknown2Vtbl { HRESULT* phr, MInterfacePointer** ppMIF); + END_INTERFACE }; +#ifdef COBJMACROS /*** IUnknown methods ***/ #define IRemUnknown2_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b) #define IRemUnknown2_AddRef(p) (p)->lpVtbl->AddRef(p) @@ -404,11 +408,11 @@ struct IRemUnknown2Vtbl { #define IRemUnknown2_RemRelease(p,a,b) (p)->lpVtbl->RemRelease(p,a,b) /*** IRemUnknown2 methods ***/ #define IRemUnknown2_RemQueryInterface2(p,a,b,c,d,e) (p)->lpVtbl->RemQueryInterface2(p,a,b,c,d,e) +#endif #endif #define IRemUnknown2_METHODS \ - ICOM_MSVTABLE_COMPAT_FIELDS \ /*** IUnknown methods ***/ \ STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; \ STDMETHOD_(ULONG,AddRef)(THIS) PURE; \ diff --git a/reactos/lib/ole32/defaulthandler.c b/reactos/lib/ole32/defaulthandler.c index 6964f15334a..02849f282da 100644 --- a/reactos/lib/ole32/defaulthandler.c +++ b/reactos/lib/ole32/defaulthandler.c @@ -325,7 +325,6 @@ static HRESULT WINAPI DefaultHandler_SetContainedObject( */ static IOleObjectVtbl DefaultHandler_IOleObject_VTable = { - ICOM_MSVTABLE_COMPAT_DummyRTTIVALUE DefaultHandler_QueryInterface, DefaultHandler_AddRef, DefaultHandler_Release, @@ -354,7 +353,6 @@ static IOleObjectVtbl DefaultHandler_IOleObject_VTable = static IUnknownVtbl DefaultHandler_NDIUnknown_VTable = { - ICOM_MSVTABLE_COMPAT_DummyRTTIVALUE DefaultHandler_NDIUnknown_QueryInterface, DefaultHandler_NDIUnknown_AddRef, DefaultHandler_NDIUnknown_Release, @@ -362,7 +360,6 @@ static IUnknownVtbl DefaultHandler_NDIUnknown_VTable = static IDataObjectVtbl DefaultHandler_IDataObject_VTable = { - ICOM_MSVTABLE_COMPAT_DummyRTTIVALUE DefaultHandler_IDataObject_QueryInterface, DefaultHandler_IDataObject_AddRef, DefaultHandler_IDataObject_Release, @@ -379,7 +376,6 @@ static IDataObjectVtbl DefaultHandler_IDataObject_VTable = static IRunnableObjectVtbl DefaultHandler_IRunnableObject_VTable = { - ICOM_MSVTABLE_COMPAT_DummyRTTIVALUE DefaultHandler_IRunnableObject_QueryInterface, DefaultHandler_IRunnableObject_AddRef, DefaultHandler_IRunnableObject_Release, diff --git a/reactos/lib/ole32/errorinfo.c b/reactos/lib/ole32/errorinfo.c index e24d9ca36e4..ce8680e65ae 100644 --- a/reactos/lib/ole32/errorinfo.c +++ b/reactos/lib/ole32/errorinfo.c @@ -30,10 +30,10 @@ #include "windef.h" #include "winbase.h" +#include "objbase.h" #include "oleauto.h" #include "winerror.h" -#include "objbase.h" #include "wine/unicode.h" #include "compobj_private.h" @@ -304,7 +304,6 @@ static HRESULT WINAPI IErrorInfoImpl_GetHelpContext( static IErrorInfoVtbl IErrorInfoImpl_VTable = { - ICOM_MSVTABLE_COMPAT_DummyRTTIVALUE IErrorInfoImpl_QueryInterface, IErrorInfoImpl_AddRef, IErrorInfoImpl_Release, @@ -406,7 +405,6 @@ static HRESULT WINAPI ICreateErrorInfoImpl_SetHelpContext( static ICreateErrorInfoVtbl ICreateErrorInfoImpl_VTable = { - ICOM_MSVTABLE_COMPAT_DummyRTTIVALUE ICreateErrorInfoImpl_QueryInterface, ICreateErrorInfoImpl_AddRef, ICreateErrorInfoImpl_Release, @@ -457,7 +455,6 @@ static HRESULT WINAPI ISupportErrorInfoImpl_InterfaceSupportsErrorInfo( static ISupportErrorInfoVtbl ISupportErrorInfoImpl_VTable = { - ICOM_MSVTABLE_COMPAT_DummyRTTIVALUE ISupportErrorInfoImpl_QueryInterface, ISupportErrorInfoImpl_AddRef, ISupportErrorInfoImpl_Release, diff --git a/reactos/lib/ole32/filemoniker.c b/reactos/lib/ole32/filemoniker.c index e55068d22d6..c465507ec7f 100644 --- a/reactos/lib/ole32/filemoniker.c +++ b/reactos/lib/ole32/filemoniker.c @@ -113,7 +113,6 @@ int WINAPI FileMonikerImpl_DecomposePath(LPCOLESTR str, LPOLESTR** tabStr); /* IPersistStream and IMoniker functions. */ static IMonikerVtbl VT_FileMonikerImpl = { - ICOM_MSVTABLE_COMPAT_DummyRTTIVALUE FileMonikerImpl_QueryInterface, FileMonikerImpl_AddRef, FileMonikerImpl_Release, @@ -143,7 +142,6 @@ static IMonikerVtbl VT_FileMonikerImpl = /* Virtual function table for the IROTData class. */ static IROTDataVtbl VT_ROTDataImpl = { - ICOM_MSVTABLE_COMPAT_DummyRTTIVALUE FileMonikerROTDataImpl_QueryInterface, FileMonikerROTDataImpl_AddRef, FileMonikerROTDataImpl_Release, @@ -155,7 +153,7 @@ static IROTDataVtbl VT_ROTDataImpl = *******************************************************************************/ HRESULT WINAPI FileMonikerImpl_QueryInterface(IMoniker* iface,REFIID riid,void** ppvObject) { - ICOM_THIS(FileMonikerImpl,iface); + FileMonikerImpl *This = (FileMonikerImpl *)iface; TRACE("(%p,%p,%p)\n",This,riid,ppvObject); @@ -192,7 +190,7 @@ HRESULT WINAPI FileMonikerImpl_QueryInterface(IMoniker* iface,REFIID riid,void** ******************************************************************************/ ULONG WINAPI FileMonikerImpl_AddRef(IMoniker* iface) { - ICOM_THIS(FileMonikerImpl,iface); + FileMonikerImpl *This = (FileMonikerImpl *)iface; TRACE("(%p)\n",iface); @@ -204,7 +202,7 @@ ULONG WINAPI FileMonikerImpl_AddRef(IMoniker* iface) ******************************************************************************/ ULONG WINAPI FileMonikerImpl_Release(IMoniker* iface) { - ICOM_THIS(FileMonikerImpl,iface); + FileMonikerImpl *This = (FileMonikerImpl *)iface; TRACE("(%p)\n",iface); @@ -262,7 +260,7 @@ HRESULT WINAPI FileMonikerImpl_Load(IMoniker* iface,IStream* pStm) WORD wbuffer; DWORD dwbuffer,length,i,doubleLenHex,doubleLenDec; - ICOM_THIS(FileMonikerImpl,iface); + FileMonikerImpl *This = (FileMonikerImpl *)iface; TRACE("(%p,%p)\n",iface,pStm); @@ -362,7 +360,7 @@ HRESULT WINAPI FileMonikerImpl_Save(IMoniker* iface, * if the length(filePath) > 8 or length(filePath) == 8 stop at step 5) */ - ICOM_THIS(FileMonikerImpl,iface); + FileMonikerImpl *This = (FileMonikerImpl *)iface; HRESULT res; LPOLESTR filePathW=This->filePathName; @@ -434,7 +432,7 @@ HRESULT WINAPI FileMonikerImpl_Save(IMoniker* iface, HRESULT WINAPI FileMonikerImpl_GetSizeMax(IMoniker* iface, ULARGE_INTEGER* pcbSize)/* Pointer to size of stream needed to save object */ { - ICOM_THIS(FileMonikerImpl,iface); + FileMonikerImpl *This = (FileMonikerImpl *)iface; DWORD len=lstrlenW(This->filePathName); DWORD sizeMAx; @@ -568,7 +566,7 @@ HRESULT WINAPI FileMonikerImpl_BindToObject(IMoniker* iface, IClassFactory *pcf=0; IClassActivator *pca=0; - ICOM_THIS(FileMonikerImpl,iface); + FileMonikerImpl *This = (FileMonikerImpl *)iface; *ppvResult=0; @@ -862,7 +860,7 @@ HRESULT WINAPI FileMonikerImpl_Enum(IMoniker* iface,BOOL fForward, IEnumMoniker* ******************************************************************************/ HRESULT WINAPI FileMonikerImpl_IsEqual(IMoniker* iface,IMoniker* pmkOtherMoniker) { - ICOM_THIS(FileMonikerImpl,iface); + FileMonikerImpl *This = (FileMonikerImpl *)iface; CLSID clsid; LPOLESTR filePath; IBindCtx* bind; @@ -895,7 +893,7 @@ HRESULT WINAPI FileMonikerImpl_IsEqual(IMoniker* iface,IMoniker* pmkOtherMoniker ******************************************************************************/ HRESULT WINAPI FileMonikerImpl_Hash(IMoniker* iface,DWORD* pdwHash) { - ICOM_THIS(FileMonikerImpl,iface); + FileMonikerImpl *This = (FileMonikerImpl *)iface; int h = 0,i,skip,len; int off = 0; @@ -963,7 +961,7 @@ HRESULT WINAPI FileMonikerImpl_GetTimeOfLastChange(IMoniker* iface, IMoniker* pmkToLeft, FILETIME* pFileTime) { - ICOM_THIS(FileMonikerImpl,iface); + FileMonikerImpl *This = (FileMonikerImpl *)iface; IRunningObjectTable* rot; HRESULT res; WIN32_FILE_ATTRIBUTE_DATA info; @@ -1231,7 +1229,7 @@ HRESULT WINAPI FileMonikerImpl_GetDisplayName(IMoniker* iface, IMoniker* pmkToLeft, LPOLESTR *ppszDisplayName) { - ICOM_THIS(FileMonikerImpl,iface); + FileMonikerImpl *This = (FileMonikerImpl *)iface; int len=lstrlenW(This->filePathName); diff --git a/reactos/lib/ole32/ftmarshal.c b/reactos/lib/ole32/ftmarshal.c index e6484167859..b97868876eb 100644 --- a/reactos/lib/ole32/ftmarshal.c +++ b/reactos/lib/ole32/ftmarshal.c @@ -52,7 +52,7 @@ typedef struct _FTMarshalImpl { HRESULT WINAPI IiFTMUnknown_fnQueryInterface (IUnknown * iface, REFIID riid, LPVOID * ppv) { - ICOM_THIS (FTMarshalImpl, iface); + FTMarshalImpl *This = (FTMarshalImpl *)iface; TRACE ("\n"); *ppv = NULL; @@ -72,7 +72,7 @@ HRESULT WINAPI IiFTMUnknown_fnQueryInterface (IUnknown * iface, REFIID riid, LPV ULONG WINAPI IiFTMUnknown_fnAddRef (IUnknown * iface) { - ICOM_THIS (FTMarshalImpl, iface); + FTMarshalImpl *This = (FTMarshalImpl *)iface; TRACE ("\n"); return InterlockedIncrement (&This->ref); @@ -81,7 +81,7 @@ ULONG WINAPI IiFTMUnknown_fnAddRef (IUnknown * iface) ULONG WINAPI IiFTMUnknown_fnRelease (IUnknown * iface) { - ICOM_THIS (FTMarshalImpl, iface); + FTMarshalImpl *This = (FTMarshalImpl *)iface; TRACE ("\n"); if (InterlockedDecrement (&This->ref)) @@ -92,7 +92,6 @@ ULONG WINAPI IiFTMUnknown_fnRelease (IUnknown * iface) static IUnknownVtbl iunkvt = { - ICOM_MSVTABLE_COMPAT_DummyRTTIVALUE IiFTMUnknown_fnQueryInterface, IiFTMUnknown_fnAddRef, IiFTMUnknown_fnRelease @@ -203,7 +202,6 @@ HRESULT WINAPI FTMarshalImpl_DisconnectObject (LPMARSHAL iface, DWORD dwReserved IMarshalVtbl ftmvtbl = { - ICOM_MSVTABLE_COMPAT_DummyRTTIVALUE FTMarshalImpl_QueryInterface, FTMarshalImpl_AddRef, FTMarshalImpl_Release, diff --git a/reactos/lib/ole32/git.c b/reactos/lib/ole32/git.c index 7581155c348..d2b753ff3d6 100644 --- a/reactos/lib/ole32/git.c +++ b/reactos/lib/ole32/git.c @@ -94,7 +94,6 @@ static HRESULT WINAPI StdGlobalInterfaceTable_GetInterfaceFromGlobal(IGlobalInte /* Virtual function table */ static IGlobalInterfaceTableVtbl StdGlobalInterfaceTableImpl_Vtbl = { - ICOM_MSVTABLE_COMPAT_DummyRTTIVALUE StdGlobalInterfaceTable_QueryInterface, StdGlobalInterfaceTable_AddRef, StdGlobalInterfaceTable_Release, @@ -350,7 +349,6 @@ static HRESULT WINAPI GITCF_LockServer(LPCLASSFACTORY iface, BOOL fLock) { } static IClassFactoryVtbl GITClassFactoryVtbl = { - ICOM_MSVTABLE_COMPAT_DummyRTTIVALUE GITCF_QueryInterface, GITCF_AddRef, GITCF_Release, diff --git a/reactos/lib/ole32/hglobalstream.c b/reactos/lib/ole32/hglobalstream.c index 1d22f359be3..3c8b41a102f 100644 --- a/reactos/lib/ole32/hglobalstream.c +++ b/reactos/lib/ole32/hglobalstream.c @@ -171,7 +171,6 @@ HRESULT WINAPI HGLOBALStreamImpl_Clone( */ static IStreamVtbl HGLOBALStreamImpl_Vtbl = { - ICOM_MSVTABLE_COMPAT_DummyRTTIVALUE HGLOBALStreamImpl_QueryInterface, HGLOBALStreamImpl_AddRef, HGLOBALStreamImpl_Release, diff --git a/reactos/lib/ole32/ifs.c b/reactos/lib/ole32/ifs.c index 89056c7be5a..7009cd3bf81 100644 --- a/reactos/lib/ole32/ifs.c +++ b/reactos/lib/ole32/ifs.c @@ -344,7 +344,6 @@ static VOID WINAPI IMalloc_fnHeapMinimize(LPMALLOC iface) { static IMallocVtbl VT_IMalloc32 = { - ICOM_MSVTABLE_COMPAT_DummyRTTIVALUE IMalloc_fnQueryInterface, IMalloc_fnAddRefRelease, IMalloc_fnAddRefRelease, @@ -392,7 +391,7 @@ static HRESULT WINAPI IMallocSpy_fnQueryInterface(LPMALLOCSPY iface,REFIID refii static ULONG WINAPI IMallocSpy_fnAddRef (LPMALLOCSPY iface) { - ICOM_THIS (_MallocSpy, iface); + _MallocSpy *This = (_MallocSpy *)iface; TRACE ("(%p)->(count=%lu)\n", This, This->ref); @@ -408,7 +407,7 @@ static ULONG WINAPI IMallocSpy_fnAddRef (LPMALLOCSPY iface) static ULONG WINAPI IMallocSpy_fnRelease (LPMALLOCSPY iface) { - ICOM_THIS (_MallocSpy, iface); + _MallocSpy *This = (_MallocSpy *)iface; TRACE ("(%p)->(count=%lu)\n", This, This->ref); @@ -420,32 +419,32 @@ static ULONG WINAPI IMallocSpy_fnRelease (LPMALLOCSPY iface) static ULONG WINAPI IMallocSpy_fnPreAlloc(LPMALLOCSPY iface, ULONG cbRequest) { - ICOM_THIS (_MallocSpy, iface); + _MallocSpy *This = (_MallocSpy *)iface; TRACE ("(%p)->(%lu)\n", This, cbRequest); return cbRequest; } static PVOID WINAPI IMallocSpy_fnPostAlloc(LPMALLOCSPY iface, void* pActual) { - ICOM_THIS (_MallocSpy, iface); + _MallocSpy *This = (_MallocSpy *)iface; TRACE ("(%p)->(%p)\n", This, pActual); return pActual; } static PVOID WINAPI IMallocSpy_fnPreFree(LPMALLOCSPY iface, void* pRequest, BOOL fSpyed) { - ICOM_THIS (_MallocSpy, iface); + _MallocSpy *This = (_MallocSpy *)iface; TRACE ("(%p)->(%p %u)\n", This, pRequest, fSpyed); return pRequest; } static void WINAPI IMallocSpy_fnPostFree(LPMALLOCSPY iface, BOOL fSpyed) { - ICOM_THIS (_MallocSpy, iface); + _MallocSpy *This = (_MallocSpy *)iface; TRACE ("(%p)->(%u)\n", This, fSpyed); } static ULONG WINAPI IMallocSpy_fnPreRealloc(LPMALLOCSPY iface, void* pRequest, ULONG cbRequest, void** ppNewRequest, BOOL fSpyed) { - ICOM_THIS (_MallocSpy, iface); + _MallocSpy *This = (_MallocSpy *)iface; TRACE ("(%p)->(%p %lu %u)\n", This, pRequest, cbRequest, fSpyed); *ppNewRequest = pRequest; return cbRequest; @@ -453,48 +452,48 @@ static ULONG WINAPI IMallocSpy_fnPreRealloc(LPMALLOCSPY iface, void* pRequest, U static PVOID WINAPI IMallocSpy_fnPostRealloc(LPMALLOCSPY iface, void* pActual, BOOL fSpyed) { - ICOM_THIS (_MallocSpy, iface); + _MallocSpy *This = (_MallocSpy *)iface; TRACE ("(%p)->(%p %u)\n", This, pActual, fSpyed); return pActual; } static PVOID WINAPI IMallocSpy_fnPreGetSize(LPMALLOCSPY iface, void* pRequest, BOOL fSpyed) { - ICOM_THIS (_MallocSpy, iface); + _MallocSpy *This = (_MallocSpy *)iface; TRACE ("(%p)->(%p %u)\n", This, pRequest, fSpyed); return pRequest; } static ULONG WINAPI IMallocSpy_fnPostGetSize(LPMALLOCSPY iface, ULONG cbActual, BOOL fSpyed) { - ICOM_THIS (_MallocSpy, iface); + _MallocSpy *This = (_MallocSpy *)iface; TRACE ("(%p)->(%lu %u)\n", This, cbActual, fSpyed); return cbActual; } static PVOID WINAPI IMallocSpy_fnPreDidAlloc(LPMALLOCSPY iface, void* pRequest, BOOL fSpyed) { - ICOM_THIS (_MallocSpy, iface); + _MallocSpy *This = (_MallocSpy *)iface; TRACE ("(%p)->(%p %u)\n", This, pRequest, fSpyed); return pRequest; } static int WINAPI IMallocSpy_fnPostDidAlloc(LPMALLOCSPY iface, void* pRequest, BOOL fSpyed, int fActual) { - ICOM_THIS (_MallocSpy, iface); + _MallocSpy *This = (_MallocSpy *)iface; TRACE ("(%p)->(%p %u %u)\n", This, pRequest, fSpyed, fActual); return fActual; } static void WINAPI IMallocSpy_fnPreHeapMinimize(LPMALLOCSPY iface) { - ICOM_THIS (_MallocSpy, iface); + _MallocSpy *This = (_MallocSpy *)iface; TRACE ("(%p)->()\n", This); } static void WINAPI IMallocSpy_fnPostHeapMinimize(LPMALLOCSPY iface) { - ICOM_THIS (_MallocSpy, iface); + _MallocSpy *This = (_MallocSpy *)iface; TRACE ("(%p)->()\n", This); } @@ -504,7 +503,6 @@ static void MallocSpyDumpLeaks() { static IMallocSpyVtbl VT_IMallocSpy = { - ICOM_MSVTABLE_COMPAT_DummyRTTIVALUE IMallocSpy_fnQueryInterface, IMallocSpy_fnAddRef, IMallocSpy_fnRelease, diff --git a/reactos/lib/ole32/itemmoniker.c b/reactos/lib/ole32/itemmoniker.c index 415390b75c5..fef617d8cb1 100644 --- a/reactos/lib/ole32/itemmoniker.c +++ b/reactos/lib/ole32/itemmoniker.c @@ -112,7 +112,6 @@ static HRESULT WINAPI ItemMonikerROTDataImpl_GetComparaisonData(IROTData* iface, /* IPersistStream and IMoniker functions. */ static IMonikerVtbl VT_ItemMonikerImpl = { - ICOM_MSVTABLE_COMPAT_DummyRTTIVALUE ItemMonikerImpl_QueryInterface, ItemMonikerImpl_AddRef, ItemMonikerImpl_Release, @@ -142,7 +141,6 @@ static IMonikerVtbl VT_ItemMonikerImpl = /* Virtual function table for the IROTData class. */ static IROTDataVtbl VT_ROTDataImpl = { - ICOM_MSVTABLE_COMPAT_DummyRTTIVALUE ItemMonikerROTDataImpl_QueryInterface, ItemMonikerROTDataImpl_AddRef, ItemMonikerROTDataImpl_Release, @@ -154,7 +152,7 @@ static IROTDataVtbl VT_ROTDataImpl = *******************************************************************************/ HRESULT WINAPI ItemMonikerImpl_QueryInterface(IMoniker* iface,REFIID riid,void** ppvObject) { - ICOM_THIS(ItemMonikerImpl,iface); + ItemMonikerImpl *This = (ItemMonikerImpl *)iface; TRACE("(%p,%p,%p)\n",This,riid,ppvObject); @@ -191,7 +189,7 @@ HRESULT WINAPI ItemMonikerImpl_QueryInterface(IMoniker* iface,REFIID riid,void** ******************************************************************************/ ULONG WINAPI ItemMonikerImpl_AddRef(IMoniker* iface) { - ICOM_THIS(ItemMonikerImpl,iface); + ItemMonikerImpl *This = (ItemMonikerImpl *)iface; TRACE("(%p)\n",This); @@ -203,7 +201,7 @@ ULONG WINAPI ItemMonikerImpl_AddRef(IMoniker* iface) ******************************************************************************/ ULONG WINAPI ItemMonikerImpl_Release(IMoniker* iface) { - ICOM_THIS(ItemMonikerImpl,iface); + ItemMonikerImpl *This = (ItemMonikerImpl *)iface; TRACE("(%p)\n",This); @@ -254,7 +252,7 @@ HRESULT WINAPI ItemMonikerImpl_IsDirty(IMoniker* iface) HRESULT WINAPI ItemMonikerImpl_Load(IMoniker* iface,IStream* pStm) { - ICOM_THIS(ItemMonikerImpl,iface); + ItemMonikerImpl *This = (ItemMonikerImpl *)iface; HRESULT res; DWORD delimiterLength,nameLength,lenW; CHAR *itemNameA,*itemDelimiterA; @@ -322,7 +320,7 @@ HRESULT WINAPI ItemMonikerImpl_Save(IMoniker* iface, IStream* pStm,/* pointer to the stream where the object is to be saved */ BOOL fClearDirty)/* Specifies whether to clear the dirty flag */ { - ICOM_THIS(ItemMonikerImpl,iface); + ItemMonikerImpl *This = (ItemMonikerImpl *)iface; HRESULT res; CHAR *itemNameA,*itemDelimiterA; @@ -352,7 +350,7 @@ HRESULT WINAPI ItemMonikerImpl_Save(IMoniker* iface, HRESULT WINAPI ItemMonikerImpl_GetSizeMax(IMoniker* iface, ULARGE_INTEGER* pcbSize)/* Pointer to size of stream needed to save object */ { - ICOM_THIS(ItemMonikerImpl,iface); + ItemMonikerImpl *This = (ItemMonikerImpl *)iface; DWORD delimiterLength=lstrlenW(This->itemDelimiter)+1; DWORD nameLength=lstrlenW(This->itemName)+1; @@ -438,7 +436,7 @@ HRESULT WINAPI ItemMonikerImpl_BindToObject(IMoniker* iface, REFIID riid, VOID** ppvResult) { - ICOM_THIS(ItemMonikerImpl,iface); + ItemMonikerImpl *This = (ItemMonikerImpl *)iface; HRESULT res; IID refid=IID_IOleItemContainer; @@ -475,7 +473,7 @@ HRESULT WINAPI ItemMonikerImpl_BindToStorage(IMoniker* iface, REFIID riid, VOID** ppvResult) { - ICOM_THIS(ItemMonikerImpl,iface); + ItemMonikerImpl *This = (ItemMonikerImpl *)iface; HRESULT res; IOleItemContainer *poic=0; @@ -647,7 +645,7 @@ HRESULT WINAPI ItemMonikerImpl_IsEqual(IMoniker* iface,IMoniker* pmkOtherMoniker ******************************************************************************/ HRESULT WINAPI ItemMonikerImpl_Hash(IMoniker* iface,DWORD* pdwHash) { - ICOM_THIS(ItemMonikerImpl,iface); + ItemMonikerImpl *This = (ItemMonikerImpl *)iface; int h = 0,i,skip,len; int off = 0; @@ -687,7 +685,7 @@ HRESULT WINAPI ItemMonikerImpl_IsRunning(IMoniker* iface, IRunningObjectTable* rot; HRESULT res; IOleItemContainer *poic=0; - ICOM_THIS(ItemMonikerImpl,iface); + ItemMonikerImpl *This = (ItemMonikerImpl *)iface; TRACE("(%p,%p,%p,%p)\n",iface,pbc,pmkToLeft,pmkNewlyRunning); @@ -829,7 +827,7 @@ HRESULT WINAPI ItemMonikerImpl_GetDisplayName(IMoniker* iface, IMoniker* pmkToLeft, LPOLESTR *ppszDisplayName) { - ICOM_THIS(ItemMonikerImpl,iface); + ItemMonikerImpl *This = (ItemMonikerImpl *)iface; TRACE("(%p,%p,%p,%p)\n",iface,pbc,pmkToLeft,ppszDisplayName); @@ -865,7 +863,7 @@ HRESULT WINAPI ItemMonikerImpl_ParseDisplayName(IMoniker* iface, IParseDisplayName* ppdn=0; LPOLESTR displayName; HRESULT res; - ICOM_THIS(ItemMonikerImpl,iface); + ItemMonikerImpl *This = (ItemMonikerImpl *)iface; /* If pmkToLeft is NULL, this method returns MK_E_SYNTAX */ if (pmkToLeft==NULL) diff --git a/reactos/lib/ole32/marshal.c b/reactos/lib/ole32/marshal.c index 29f663f04fb..24bbe37cce9 100644 --- a/reactos/lib/ole32/marshal.c +++ b/reactos/lib/ole32/marshal.c @@ -216,14 +216,14 @@ StdMarshalImpl_QueryInterface(LPMARSHAL iface,REFIID riid,LPVOID *ppv) { static ULONG WINAPI StdMarshalImpl_AddRef(LPMARSHAL iface) { - ICOM_THIS(StdMarshalImpl,iface); + StdMarshalImpl *This = (StdMarshalImpl *)iface; This->ref++; return This->ref; } static ULONG WINAPI StdMarshalImpl_Release(LPMARSHAL iface) { - ICOM_THIS(StdMarshalImpl,iface); + StdMarshalImpl *This = (StdMarshalImpl *)iface; This->ref--; if (This->ref) @@ -392,7 +392,6 @@ StdMarshalImpl_DisconnectObject(LPMARSHAL iface, DWORD dwReserved) { } IMarshalVtbl stdmvtbl = { - ICOM_MSVTABLE_COMPAT_DummyRTTIVALUE StdMarshalImpl_QueryInterface, StdMarshalImpl_AddRef, StdMarshalImpl_Release, @@ -752,7 +751,6 @@ SMCF_LockServer(LPCLASSFACTORY iface, BOOL fLock) { } static IClassFactoryVtbl dfmarshalcfvtbl = { - ICOM_MSVTABLE_COMPAT_DummyRTTIVALUE SMCF_QueryInterface, SMCF_AddRef, SMCF_Release, diff --git a/reactos/lib/ole32/memlockbytes.c b/reactos/lib/ole32/memlockbytes.c index 5fc32dd989a..65a0fce3f7d 100644 --- a/reactos/lib/ole32/memlockbytes.c +++ b/reactos/lib/ole32/memlockbytes.c @@ -142,7 +142,6 @@ HRESULT WINAPI HGLOBALLockBytesImpl_Stat( */ static ILockBytesVtbl HGLOBALLockBytesImpl_Vtbl = { - ICOM_MSVTABLE_COMPAT_DummyRTTIVALUE HGLOBALLockBytesImpl_QueryInterface, HGLOBALLockBytesImpl_AddRef, HGLOBALLockBytesImpl_Release, diff --git a/reactos/lib/ole32/moniker.c b/reactos/lib/ole32/moniker.c index 5d223ba7b6c..447ae0d4c06 100644 --- a/reactos/lib/ole32/moniker.c +++ b/reactos/lib/ole32/moniker.c @@ -92,7 +92,6 @@ HRESULT WINAPI RunningObjectTableImpl_GetObjectIndex(RunningObjectTableImpl* Thi /* Virtual function table for the IRunningObjectTable class. */ static IRunningObjectTableVtbl VT_RunningObjectTableImpl = { - ICOM_MSVTABLE_COMPAT_DummyRTTIVALUE RunningObjectTableImpl_QueryInterface, RunningObjectTableImpl_AddRef, RunningObjectTableImpl_Release, @@ -110,7 +109,7 @@ static IRunningObjectTableVtbl VT_RunningObjectTableImpl = */ HRESULT WINAPI RunningObjectTableImpl_QueryInterface(IRunningObjectTable* iface,REFIID riid,void** ppvObject) { - ICOM_THIS(RunningObjectTableImpl,iface); + RunningObjectTableImpl *This = (RunningObjectTableImpl *)iface; TRACE("(%p,%p,%p)\n",This,riid,ppvObject); @@ -142,7 +141,7 @@ HRESULT WINAPI RunningObjectTableImpl_QueryInterface(IRunningObjectTable* iface, */ ULONG WINAPI RunningObjectTableImpl_AddRef(IRunningObjectTable* iface) { - ICOM_THIS(RunningObjectTableImpl,iface); + RunningObjectTableImpl *This = (RunningObjectTableImpl *)iface; TRACE("(%p)\n",This); @@ -174,7 +173,7 @@ HRESULT WINAPI RunningObjectTableImpl_Destroy() ULONG WINAPI RunningObjectTableImpl_Release(IRunningObjectTable* iface) { DWORD i; - ICOM_THIS(RunningObjectTableImpl,iface); + RunningObjectTableImpl *This = (RunningObjectTableImpl *)iface; TRACE("(%p)\n",This); @@ -266,7 +265,7 @@ HRESULT WINAPI RunningObjectTableImpl_Register(IRunningObjectTable* iface, DWORD *pdwRegister) /* Pointer to the value identifying the registration */ { HRESULT res=S_OK; - ICOM_THIS(RunningObjectTableImpl,iface); + RunningObjectTableImpl *This = (RunningObjectTableImpl *)iface; TRACE("(%p,%ld,%p,%p,%p)\n",This,grfFlags,punkObject,pmkObjectName,pdwRegister); @@ -329,7 +328,7 @@ HRESULT WINAPI RunningObjectTableImpl_Revoke( IRunningObjectTable* iface, { DWORD index,j; - ICOM_THIS(RunningObjectTableImpl,iface); + RunningObjectTableImpl *This = (RunningObjectTableImpl *)iface; TRACE("(%p,%ld)\n",This,dwRegister); @@ -362,7 +361,7 @@ HRESULT WINAPI RunningObjectTableImpl_Revoke( IRunningObjectTable* iface, HRESULT WINAPI RunningObjectTableImpl_IsRunning( IRunningObjectTable* iface, IMoniker *pmkObjectName) /* Pointer to the moniker of the object whose status is desired */ { - ICOM_THIS(RunningObjectTableImpl,iface); + RunningObjectTableImpl *This = (RunningObjectTableImpl *)iface; TRACE("(%p,%p)\n",This,pmkObjectName); @@ -377,7 +376,7 @@ HRESULT WINAPI RunningObjectTableImpl_GetObject( IRunningObjectTable* iface, IUnknown **ppunkObject) /* Address of output variable that receives the IUnknown interface pointer */ { DWORD index; - ICOM_THIS(RunningObjectTableImpl,iface); + RunningObjectTableImpl *This = (RunningObjectTableImpl *)iface; TRACE("(%p,%p,%p)\n",This,pmkObjectName,ppunkObject); @@ -407,7 +406,7 @@ HRESULT WINAPI RunningObjectTableImpl_NoteChangeTime(IRunningObjectTable* iface, FILETIME *pfiletime) /* Pointer to structure containing object's last change time */ { DWORD index=-1; - ICOM_THIS(RunningObjectTableImpl,iface); + RunningObjectTableImpl *This = (RunningObjectTableImpl *)iface; TRACE("(%p,%ld,%p)\n",This,dwRegister,pfiletime); @@ -429,7 +428,7 @@ HRESULT WINAPI RunningObjectTableImpl_GetTimeOfLastChange(IRunningObjectTable* i FILETIME *pfiletime) /* Pointer to structure that receives object's last change time */ { DWORD index=-1; - ICOM_THIS(RunningObjectTableImpl,iface); + RunningObjectTableImpl *This = (RunningObjectTableImpl *)iface; TRACE("(%p,%p,%p)\n",This,pmkObjectName,pfiletime); @@ -518,7 +517,7 @@ HRESULT WINAPI GetRunningObjectTable(DWORD reserved, LPRUNNINGOBJECTTABLE *pprot HRESULT WINAPI OleRun(LPUNKNOWN pUnknown) { IRunnableObject *runable; - ICOM_THIS(IRunnableObject,pUnknown); + IRunnableObject *This = (IRunnableObject *)pUnknown; LRESULT ret; ret = IRunnableObject_QueryInterface(This,&IID_IRunnableObject,(LPVOID*)&runable); diff --git a/reactos/lib/ole32/ole16.c b/reactos/lib/ole32/ole16.c index b3ef66bd94c..3c21c6e0f16 100644 --- a/reactos/lib/ole32/ole16.c +++ b/reactos/lib/ole32/ole16.c @@ -73,7 +73,7 @@ typedef struct * IMalloc16_QueryInterface [COMPOBJ.500] */ HRESULT WINAPI IMalloc16_fnQueryInterface(IMalloc16* iface,REFIID refiid,LPVOID *obj) { - ICOM_THIS(IMalloc16Impl,iface); + IMalloc16Impl *This = (IMalloc16Impl *)iface; TRACE("(%p)->QueryInterface(%s,%p)\n",This,debugstr_guid(refiid),obj); if ( !memcmp(&IID_IUnknown,refiid,sizeof(IID_IUnknown)) || @@ -89,7 +89,7 @@ HRESULT WINAPI IMalloc16_fnQueryInterface(IMalloc16* iface,REFIID refiid,LPVOID * IMalloc16_AddRef [COMPOBJ.501] */ ULONG WINAPI IMalloc16_fnAddRef(IMalloc16* iface) { - ICOM_THIS(IMalloc16Impl,iface); + IMalloc16Impl *This = (IMalloc16Impl *)iface; TRACE("(%p)->AddRef()\n",This); return 1; /* cannot be freed */ } @@ -98,7 +98,7 @@ ULONG WINAPI IMalloc16_fnAddRef(IMalloc16* iface) { * IMalloc16_Release [COMPOBJ.502] */ ULONG WINAPI IMalloc16_fnRelease(IMalloc16* iface) { - ICOM_THIS(IMalloc16Impl,iface); + IMalloc16Impl *This = (IMalloc16Impl *)iface; TRACE("(%p)->Release()\n",This); return 1; /* cannot be freed */ } @@ -107,7 +107,7 @@ ULONG WINAPI IMalloc16_fnRelease(IMalloc16* iface) { * IMalloc16_Alloc [COMPOBJ.503] */ SEGPTR WINAPI IMalloc16_fnAlloc(IMalloc16* iface,DWORD cb) { - ICOM_THIS(IMalloc16Impl,iface); + IMalloc16Impl *This = (IMalloc16Impl *)iface; TRACE("(%p)->Alloc(%ld)\n",This,cb); return MapLS( HeapAlloc( GetProcessHeap(), 0, cb ) ); } @@ -118,7 +118,7 @@ SEGPTR WINAPI IMalloc16_fnAlloc(IMalloc16* iface,DWORD cb) { VOID WINAPI IMalloc16_fnFree(IMalloc16* iface,SEGPTR pv) { void *ptr = MapSL(pv); - ICOM_THIS(IMalloc16Impl,iface); + IMalloc16Impl *This = (IMalloc16Impl *)iface; TRACE("(%p)->Free(%08lx)\n",This,pv); UnMapLS(pv); HeapFree( GetProcessHeap(), 0, ptr ); @@ -130,7 +130,7 @@ VOID WINAPI IMalloc16_fnFree(IMalloc16* iface,SEGPTR pv) SEGPTR WINAPI IMalloc16_fnRealloc(IMalloc16* iface,SEGPTR pv,DWORD cb) { SEGPTR ret; - ICOM_THIS(IMalloc16Impl,iface); + IMalloc16Impl *This = (IMalloc16Impl *)iface; TRACE("(%p)->Realloc(%08lx,%ld)\n",This,pv,cb); if (!pv) ret = IMalloc16_fnAlloc(iface, cb); @@ -149,7 +149,7 @@ SEGPTR WINAPI IMalloc16_fnRealloc(IMalloc16* iface,SEGPTR pv,DWORD cb) */ DWORD WINAPI IMalloc16_fnGetSize(const IMalloc16* iface,SEGPTR pv) { - ICOM_THIS(IMalloc16Impl,iface); + IMalloc16Impl *This = (IMalloc16Impl *)iface; TRACE("(%p)->GetSize(%08lx)\n",This,pv); return HeapSize( GetProcessHeap(), 0, MapSL(pv) ); } @@ -158,7 +158,7 @@ DWORD WINAPI IMalloc16_fnGetSize(const IMalloc16* iface,SEGPTR pv) * IMalloc16_DidAlloc [COMPOBJ.507] */ INT16 WINAPI IMalloc16_fnDidAlloc(const IMalloc16* iface,LPVOID pv) { - ICOM_THIS(IMalloc16,iface); + IMalloc16 *This = (IMalloc16 *)iface; TRACE("(%p)->DidAlloc(%p)\n",This,pv); return (INT16)-1; } @@ -167,7 +167,7 @@ INT16 WINAPI IMalloc16_fnDidAlloc(const IMalloc16* iface,LPVOID pv) { * IMalloc16_HeapMinimize [COMPOBJ.508] */ LPVOID WINAPI IMalloc16_fnHeapMinimize(IMalloc16* iface) { - ICOM_THIS(IMalloc16Impl,iface); + IMalloc16Impl *This = (IMalloc16Impl *)iface; TRACE("(%p)->HeapMinimize()\n",This); return NULL; } diff --git a/reactos/lib/ole32/ole2.c b/reactos/lib/ole32/ole2.c index efeb81e597c..b53257dab87 100644 --- a/reactos/lib/ole32/ole2.c +++ b/reactos/lib/ole32/ole2.c @@ -1,4 +1,3 @@ - /* * OLE2 library * @@ -2327,25 +2326,90 @@ static void OLE_FreeClipDataArray(ULONG count, CLIPDATA * pClipDataArray) CoTaskMemFree(pClipDataArray[i].pClipData); } -HRESULT WINAPI FreePropVariantArray(ULONG,PROPVARIANT*); +/****************************************************************************** + * Check if a PROPVARIANT's type is valid. + */ +static inline HRESULT PROPVARIANT_ValidateType(VARTYPE vt) +{ + switch (vt) + { + case VT_EMPTY: + case VT_NULL: + case VT_I2: + case VT_I4: + case VT_R4: + case VT_R8: + case VT_CY: + case VT_DATE: + case VT_BSTR: + case VT_ERROR: + case VT_BOOL: + case VT_UI1: + case VT_UI2: + case VT_UI4: + case VT_I8: + case VT_UI8: + case VT_LPSTR: + case VT_LPWSTR: + case VT_FILETIME: + case VT_BLOB: + case VT_STREAM: + case VT_STORAGE: + case VT_STREAMED_OBJECT: + case VT_STORED_OBJECT: + case VT_BLOB_OBJECT: + case VT_CF: + case VT_CLSID: + case VT_I2|VT_VECTOR: + case VT_I4|VT_VECTOR: + case VT_R4|VT_VECTOR: + case VT_R8|VT_VECTOR: + case VT_CY|VT_VECTOR: + case VT_DATE|VT_VECTOR: + case VT_BSTR|VT_VECTOR: + case VT_ERROR|VT_VECTOR: + case VT_BOOL|VT_VECTOR: + case VT_VARIANT|VT_VECTOR: + case VT_UI1|VT_VECTOR: + case VT_UI2|VT_VECTOR: + case VT_UI4|VT_VECTOR: + case VT_I8|VT_VECTOR: + case VT_UI8|VT_VECTOR: + case VT_LPSTR|VT_VECTOR: + case VT_LPWSTR|VT_VECTOR: + case VT_FILETIME|VT_VECTOR: + case VT_CF|VT_VECTOR: + case VT_CLSID|VT_VECTOR: + return S_OK; + } + WARN("Bad type %d\n", vt); + return STG_E_INVALIDPARAMETER; +} /*********************************************************************** * PropVariantClear [OLE32.@] */ HRESULT WINAPI PropVariantClear(PROPVARIANT * pvar) /* [in/out] */ { + HRESULT hr; + TRACE("(%p)\n", pvar); if (!pvar) return S_OK; + hr = PROPVARIANT_ValidateType(pvar->vt); + if (FAILED(hr)) + return hr; + switch(pvar->vt) { case VT_STREAM: case VT_STREAMED_OBJECT: case VT_STORAGE: case VT_STORED_OBJECT: - IUnknown_Release((LPUNKNOWN)pvar->u.pStream); + if (pvar->u.pStream) + IUnknown_Release(pvar->u.pStream); break; case VT_CLSID: case VT_LPSTR: @@ -2359,8 +2423,11 @@ HRESULT WINAPI PropVariantClear(PROPVARIANT * pvar) /* [in/out] */ CoTaskMemFree(pvar->u.blob.pBlobData); break; case VT_BSTR: - FIXME("Need to load OLEAUT32 for SysFreeString\n"); - /* SysFreeString(pvar->u.bstrVal); */ + if (pvar->u.bstrVal) + { + FIXME("Need to load OLEAUT32 for SysFreeString\n"); + /* SysFreeString(pvar->u.bstrVal); */ + } break; case VT_CF: if (pvar->u.pclipdata) @@ -2370,12 +2437,7 @@ HRESULT WINAPI PropVariantClear(PROPVARIANT * pvar) /* [in/out] */ } break; default: - if (pvar->vt & VT_ARRAY) - { - FIXME("Need to call SafeArrayDestroy\n"); - /* SafeArrayDestroy(pvar->u.caub); */ - } - switch (pvar->vt & VT_VECTOR) + switch (pvar->vt & ~VT_VECTOR) { case VT_VARIANT: FreePropVariantArray(pvar->u.capropvar.cElems, pvar->u.capropvar.pElems); @@ -2386,9 +2448,10 @@ HRESULT WINAPI PropVariantClear(PROPVARIANT * pvar) /* [in/out] */ case VT_BSTR: case VT_LPSTR: case VT_LPWSTR: + case VT_CLSID: FIXME("Freeing of vector sub-type not supported yet\n"); } - if (pvar->vt & VT_VECTOR) + if (pvar->vt & ~VT_VECTOR) { /* pick an arbitary VT_VECTOR structure - they all have the same * memory layout */ @@ -2408,7 +2471,13 @@ HRESULT WINAPI PropVariantCopy(PROPVARIANT *pvarDest, /* [out] */ const PROPVARIANT *pvarSrc) /* [in] */ { ULONG len; - TRACE("(%p, %p): stub:\n", pvarDest, pvarSrc); + HRESULT hr; + + TRACE("(%p, %p)\n", pvarDest, pvarSrc); + + hr = PROPVARIANT_ValidateType(pvarSrc->vt); + if (FAILED(hr)) + return hr; /* this will deal with most cases */ CopyMemory(pvarDest, pvarSrc, sizeof(*pvarDest)); @@ -2427,13 +2496,13 @@ HRESULT WINAPI PropVariantCopy(PROPVARIANT *pvarDest, /* [out] */ break; case VT_LPSTR: len = strlen(pvarSrc->u.pszVal); - pvarDest->u.pszVal = CoTaskMemAlloc(len); - CopyMemory(pvarDest->u.pszVal, pvarSrc->u.pszVal, len); + pvarDest->u.pszVal = CoTaskMemAlloc((len+1)*sizeof(CHAR)); + CopyMemory(pvarDest->u.pszVal, pvarSrc->u.pszVal, (len+1)*sizeof(CHAR)); break; case VT_LPWSTR: len = lstrlenW(pvarSrc->u.pwszVal); - pvarDest->u.pwszVal = CoTaskMemAlloc(len); - CopyMemory(pvarDest->u.pwszVal, pvarSrc->u.pwszVal, len); + pvarDest->u.pwszVal = CoTaskMemAlloc((len+1)*sizeof(WCHAR)); + CopyMemory(pvarDest->u.pwszVal, pvarSrc->u.pwszVal, (len+1)*sizeof(WCHAR)); break; case VT_BLOB: case VT_BLOB_OBJECT: @@ -2456,11 +2525,6 @@ HRESULT WINAPI PropVariantCopy(PROPVARIANT *pvarDest, /* [out] */ } break; default: - if (pvarSrc->vt & VT_ARRAY) - { - FIXME("Need to call SafeArrayCopy\n"); - /* SafeArrayCopy(...); */ - } if (pvarSrc->vt & VT_VECTOR) { int elemSize; diff --git a/reactos/lib/ole32/oleobj.c b/reactos/lib/ole32/oleobj.c index fcbce41be4e..339a33644f3 100644 --- a/reactos/lib/ole32/oleobj.c +++ b/reactos/lib/ole32/oleobj.c @@ -65,7 +65,6 @@ static HRESULT WINAPI OleAdviseHolderImpl_SendOnClose (LPOLEADVISEHOLDER); */ static struct IOleAdviseHolderVtbl oahvt = { - ICOM_MSVTABLE_COMPAT_DummyRTTIVALUE OleAdviseHolderImpl_QueryInterface, OleAdviseHolderImpl_AddRef, OleAdviseHolderImpl_Release, @@ -140,7 +139,7 @@ static HRESULT WINAPI OleAdviseHolderImpl_QueryInterface( REFIID riid, LPVOID* ppvObj) { - ICOM_THIS(OleAdviseHolderImpl, iface); + OleAdviseHolderImpl *This = (OleAdviseHolderImpl *)iface; TRACE("(%p)->(%s,%p)\n",This,debugstr_guid(riid),ppvObj); /* * Sanity check @@ -178,7 +177,7 @@ static HRESULT WINAPI OleAdviseHolderImpl_QueryInterface( static ULONG WINAPI OleAdviseHolderImpl_AddRef( LPOLEADVISEHOLDER iface) { - ICOM_THIS(OleAdviseHolderImpl, iface); + OleAdviseHolderImpl *This = (OleAdviseHolderImpl *)iface; TRACE("(%p)->(ref=%ld)\n", This, This->ref); return ++(This->ref); } @@ -189,7 +188,7 @@ static ULONG WINAPI OleAdviseHolderImpl_AddRef( static ULONG WINAPI OleAdviseHolderImpl_Release( LPOLEADVISEHOLDER iface) { - ICOM_THIS(OleAdviseHolderImpl, iface); + OleAdviseHolderImpl *This = (OleAdviseHolderImpl *)iface; TRACE("(%p)->(ref=%ld)\n", This, This->ref); This->ref--; @@ -213,7 +212,7 @@ static HRESULT WINAPI OleAdviseHolderImpl_Advise( { DWORD index; - ICOM_THIS(OleAdviseHolderImpl, iface); + OleAdviseHolderImpl *This = (OleAdviseHolderImpl *)iface; TRACE("(%p)->(%p, %p)\n", This, pAdvise, pdwConnection); @@ -277,7 +276,7 @@ static HRESULT WINAPI OleAdviseHolderImpl_Unadvise( LPOLEADVISEHOLDER iface, DWORD dwConnection) { - ICOM_THIS(OleAdviseHolderImpl, iface); + OleAdviseHolderImpl *This = (OleAdviseHolderImpl *)iface; TRACE("(%p)->(%lu)\n", This, dwConnection); @@ -312,7 +311,7 @@ static HRESULT WINAPI OleAdviseHolderImpl_Unadvise( static HRESULT WINAPI OleAdviseHolderImpl_EnumAdvise (LPOLEADVISEHOLDER iface, IEnumSTATDATA **ppenumAdvise) { - ICOM_THIS(OleAdviseHolderImpl, iface); + OleAdviseHolderImpl *This = (OleAdviseHolderImpl *)iface; FIXME("(%p)->(%p)\n", This, ppenumAdvise); *ppenumAdvise = NULL; @@ -326,7 +325,7 @@ OleAdviseHolderImpl_EnumAdvise (LPOLEADVISEHOLDER iface, IEnumSTATDATA **ppenumA static HRESULT WINAPI OleAdviseHolderImpl_SendOnRename (LPOLEADVISEHOLDER iface, IMoniker *pmk) { - ICOM_THIS(OleAdviseHolderImpl, iface); + OleAdviseHolderImpl *This = (OleAdviseHolderImpl *)iface; FIXME("(%p)->(%p)\n", This, pmk); @@ -339,7 +338,7 @@ OleAdviseHolderImpl_SendOnRename (LPOLEADVISEHOLDER iface, IMoniker *pmk) static HRESULT WINAPI OleAdviseHolderImpl_SendOnSave (LPOLEADVISEHOLDER iface) { - ICOM_THIS(OleAdviseHolderImpl, iface); + OleAdviseHolderImpl *This = (OleAdviseHolderImpl *)iface; FIXME("(%p)\n", This); return S_OK; @@ -351,7 +350,7 @@ OleAdviseHolderImpl_SendOnSave (LPOLEADVISEHOLDER iface) static HRESULT WINAPI OleAdviseHolderImpl_SendOnClose (LPOLEADVISEHOLDER iface) { - ICOM_THIS(OleAdviseHolderImpl, iface); + OleAdviseHolderImpl *This = (OleAdviseHolderImpl *)iface; FIXME("(%p)\n", This); @@ -413,7 +412,6 @@ static HRESULT WINAPI DataAdviseHolder_SendOnDataChange( */ static struct IDataAdviseHolderVtbl DataAdviseHolderImpl_VTable = { - ICOM_MSVTABLE_COMPAT_DummyRTTIVALUE DataAdviseHolder_QueryInterface, DataAdviseHolder_AddRef, DataAdviseHolder_Release, @@ -477,7 +475,7 @@ static HRESULT WINAPI DataAdviseHolder_QueryInterface( REFIID riid, void** ppvObject) { - ICOM_THIS(DataAdviseHolder, iface); + DataAdviseHolder *This = (DataAdviseHolder *)iface; TRACE("(%p)->(%s,%p)\n",This,debugstr_guid(riid),ppvObject); /* * Perform a sanity check on the parameters. @@ -524,7 +522,7 @@ static HRESULT WINAPI DataAdviseHolder_QueryInterface( static ULONG WINAPI DataAdviseHolder_AddRef( IDataAdviseHolder* iface) { - ICOM_THIS(DataAdviseHolder, iface); + DataAdviseHolder *This = (DataAdviseHolder *)iface; TRACE("(%p) (ref=%ld)\n", This, This->ref); This->ref++; @@ -539,7 +537,7 @@ static ULONG WINAPI DataAdviseHolder_AddRef( static ULONG WINAPI DataAdviseHolder_Release( IDataAdviseHolder* iface) { - ICOM_THIS(DataAdviseHolder, iface); + DataAdviseHolder *This = (DataAdviseHolder *)iface; TRACE("(%p) (ref=%ld)\n", This, This->ref); /* @@ -574,7 +572,7 @@ static HRESULT WINAPI DataAdviseHolder_Advise( { DWORD index; - ICOM_THIS(DataAdviseHolder, iface); + DataAdviseHolder *This = (DataAdviseHolder *)iface; TRACE("(%p)->(%p, %p, %08lx, %p, %p)\n", This, pDataObject, pFetc, advf, pAdvise, pdwConnection); @@ -635,7 +633,7 @@ static HRESULT WINAPI DataAdviseHolder_Unadvise( IDataAdviseHolder* iface, DWORD dwConnection) { - ICOM_THIS(DataAdviseHolder, iface); + DataAdviseHolder *This = (DataAdviseHolder *)iface; TRACE("(%p)->(%lu)\n", This, dwConnection); @@ -667,7 +665,7 @@ static HRESULT WINAPI DataAdviseHolder_EnumAdvise( IDataAdviseHolder* iface, IEnumSTATDATA** ppenumAdvise) { - ICOM_THIS(DataAdviseHolder, iface); + DataAdviseHolder *This = (DataAdviseHolder *)iface; FIXME("(%p)->(%p)\n", This, ppenumAdvise); return E_NOTIMPL; @@ -682,7 +680,7 @@ static HRESULT WINAPI DataAdviseHolder_SendOnDataChange( DWORD dwReserved, DWORD advf) { - ICOM_THIS(DataAdviseHolder, iface); + DataAdviseHolder *This = (DataAdviseHolder *)iface; DWORD index; STGMEDIUM stg; HRESULT res; diff --git a/reactos/lib/ole32/oleproxy.c b/reactos/lib/ole32/oleproxy.c index d384b4197dc..c8440a4e08b 100644 --- a/reactos/lib/ole32/oleproxy.c +++ b/reactos/lib/ole32/oleproxy.c @@ -103,7 +103,7 @@ CFStub_QueryInterface(LPRPCSTUBBUFFER iface, REFIID riid, LPVOID *ppv) { static ULONG WINAPI CFStub_AddRef(LPRPCSTUBBUFFER iface) { - ICOM_THIS(CFStub,iface); + CFStub *This = (CFStub *)iface; This->ref++; return This->ref; @@ -111,7 +111,7 @@ CFStub_AddRef(LPRPCSTUBBUFFER iface) { static ULONG WINAPI CFStub_Release(LPRPCSTUBBUFFER iface) { - ICOM_THIS(CFStub,iface); + CFStub *This = (CFStub *)iface; This->ref--; if (This->ref) @@ -122,7 +122,7 @@ CFStub_Release(LPRPCSTUBBUFFER iface) { static HRESULT WINAPI CFStub_Connect(LPRPCSTUBBUFFER iface, IUnknown *pUnkServer) { - ICOM_THIS(CFStub,iface); + CFStub *This = (CFStub *)iface; This->pUnkServer = pUnkServer; IUnknown_AddRef(pUnkServer); @@ -131,7 +131,7 @@ CFStub_Connect(LPRPCSTUBBUFFER iface, IUnknown *pUnkServer) { static void WINAPI CFStub_Disconnect(LPRPCSTUBBUFFER iface) { - ICOM_THIS(CFStub,iface); + CFStub *This = (CFStub *)iface; IUnknown_Release(This->pUnkServer); This->pUnkServer = NULL; @@ -140,7 +140,7 @@ static HRESULT WINAPI CFStub_Invoke( LPRPCSTUBBUFFER iface,RPCOLEMESSAGE* msg,IRpcChannelBuffer* chanbuf ) { - ICOM_THIS(CFStub,iface); + CFStub *This = (CFStub *)iface; HRESULT hres; if (msg->iMethod == 3) { /* CreateInstance */ @@ -238,7 +238,6 @@ CFStub_DebugServerRelease(LPRPCSTUBBUFFER iface,void *pv) { } static IRpcStubBufferVtbl cfstubvt = { - ICOM_MSVTABLE_COMPAT_DummyRTTIVALUE CFStub_QueryInterface, CFStub_AddRef, CFStub_Release, @@ -413,7 +412,6 @@ static HRESULT WINAPI CFProxy_LockServer(LPCLASSFACTORY iface,BOOL fLock) { } static IRpcProxyBufferVtbl pspbvtbl = { - ICOM_MSVTABLE_COMPAT_DummyRTTIVALUE IRpcProxyBufferImpl_QueryInterface, IRpcProxyBufferImpl_AddRef, IRpcProxyBufferImpl_Release, @@ -421,7 +419,6 @@ static IRpcProxyBufferVtbl pspbvtbl = { IRpcProxyBufferImpl_Disconnect }; static IClassFactoryVtbl cfproxyvt = { - ICOM_MSVTABLE_COMPAT_DummyRTTIVALUE CFProxy_QueryInterface, CFProxy_AddRef, CFProxy_Release, @@ -497,7 +494,6 @@ PSFacBuf_CreateStub( } static IPSFactoryBufferVtbl psfacbufvtbl = { - ICOM_MSVTABLE_COMPAT_DummyRTTIVALUE PSFacBuf_QueryInterface, PSFacBuf_AddRef, PSFacBuf_Release, diff --git a/reactos/lib/ole32/rpc.c b/reactos/lib/ole32/rpc.c index 3cbb0f7323c..511bc341483 100644 --- a/reactos/lib/ole32/rpc.c +++ b/reactos/lib/ole32/rpc.c @@ -285,14 +285,14 @@ PipeBuf_QueryInterface( static ULONG WINAPI PipeBuf_AddRef(LPRPCCHANNELBUFFER iface) { - ICOM_THIS(PipeBuf,iface); + PipeBuf *This = (PipeBuf *)iface; This->ref++; return This->ref; } static ULONG WINAPI PipeBuf_Release(LPRPCCHANNELBUFFER iface) { - ICOM_THIS(PipeBuf,iface); + PipeBuf *This = (PipeBuf *)iface; wine_rpc_disconnect_header header; HANDLE pipe; DWORD reqtype = REQTYPE_DISCONNECT; @@ -320,7 +320,7 @@ static HRESULT WINAPI PipeBuf_GetBuffer( LPRPCCHANNELBUFFER iface,RPCOLEMESSAGE* msg,REFIID riid ) { - /*ICOM_THIS(PipeBuf,iface);*/ + /*PipeBuf *This = (PipeBuf *)iface;*/ TRACE("(%p,%s)\n",msg,debugstr_guid(riid)); /* probably reuses IID in real. */ @@ -415,7 +415,7 @@ static HRESULT WINAPI PipeBuf_SendReceive( LPRPCCHANNELBUFFER iface,RPCOLEMESSAGE* msg,ULONG *status ) { - ICOM_THIS(PipeBuf,iface); + PipeBuf *This = (PipeBuf *)iface; wine_rpc_request *req; HRESULT hres; @@ -466,7 +466,6 @@ PipeBuf_IsConnected(LPRPCCHANNELBUFFER iface) { } static IRpcChannelBufferVtbl pipebufvt = { - ICOM_MSVTABLE_COMPAT_DummyRTTIVALUE PipeBuf_QueryInterface, PipeBuf_AddRef, PipeBuf_Release, diff --git a/reactos/lib/ole32/stg_stream.c b/reactos/lib/ole32/stg_stream.c index e8a5b3b3cf8..3a205ed855f 100644 --- a/reactos/lib/ole32/stg_stream.c +++ b/reactos/lib/ole32/stg_stream.c @@ -48,7 +48,6 @@ WINE_DEFAULT_DEBUG_CHANNEL(storage); */ static IStreamVtbl StgStreamImpl_Vtbl = { - ICOM_MSVTABLE_COMPAT_DummyRTTIVALUE StgStreamImpl_QueryInterface, StgStreamImpl_AddRef, StgStreamImpl_Release, diff --git a/reactos/lib/ole32/storage.c b/reactos/lib/ole32/storage.c index 0a3fe8f8086..a57ab571c84 100644 --- a/reactos/lib/ole32/storage.c +++ b/reactos/lib/ole32/storage.c @@ -970,7 +970,7 @@ typedef struct HRESULT WINAPI IStream16_fnQueryInterface( IStream16* iface,REFIID refiid,LPVOID *obj ) { - ICOM_THIS(IStream16Impl,iface); + IStream16Impl *This = (IStream16Impl *)iface; TRACE_(relay)("(%p)->(%s,%p)\n",This,debugstr_guid(refiid),obj); if (!memcmp(&IID_IUnknown,refiid,sizeof(IID_IUnknown))) { *obj = This; @@ -984,7 +984,7 @@ HRESULT WINAPI IStream16_fnQueryInterface( * IStream16_AddRef [STORAGE.519] */ ULONG WINAPI IStream16_fnAddRef(IStream16* iface) { - ICOM_THIS(IStream16Impl,iface); + IStream16Impl *This = (IStream16Impl *)iface; return ++(This->ref); } @@ -992,7 +992,7 @@ ULONG WINAPI IStream16_fnAddRef(IStream16* iface) { * IStream16_Release [STORAGE.520] */ ULONG WINAPI IStream16_fnRelease(IStream16* iface) { - ICOM_THIS(IStream16Impl,iface); + IStream16Impl *This = (IStream16Impl *)iface; FlushFileBuffers(This->hf); This->ref--; if (!This->ref) { @@ -1013,7 +1013,7 @@ ULONG WINAPI IStream16_fnRelease(IStream16* iface) { HRESULT WINAPI IStream16_fnSeek( IStream16* iface,LARGE_INTEGER offset,DWORD whence,ULARGE_INTEGER *newpos ) { - ICOM_THIS(IStream16Impl,iface); + IStream16Impl *This = (IStream16Impl *)iface; TRACE_(relay)("(%p)->([%ld.%ld],%ld,%p)\n",This,offset.u.HighPart,offset.u.LowPart,whence,newpos); switch (whence) { @@ -1057,7 +1057,7 @@ HRESULT WINAPI IStream16_fnSeek( HRESULT WINAPI IStream16_fnRead( IStream16* iface,void *pv,ULONG cb,ULONG *pcbRead ) { - ICOM_THIS(IStream16Impl,iface); + IStream16Impl *This = (IStream16Impl *)iface; BYTE block[BIGSIZE]; ULONG *bytesread=pcbRead,xxread; int blocknr; @@ -1119,7 +1119,7 @@ HRESULT WINAPI IStream16_fnRead( HRESULT WINAPI IStream16_fnWrite( IStream16* iface,const void *pv,ULONG cb,ULONG *pcbWrite ) { - ICOM_THIS(IStream16Impl,iface); + IStream16Impl *This = (IStream16Impl *)iface; BYTE block[BIGSIZE]; ULONG *byteswritten=pcbWrite,xxwritten; int oldsize,newsize,i,curoffset=0,lastblocknr,blocknr,cc; @@ -1463,7 +1463,7 @@ typedef struct HRESULT WINAPI IStream_fnQueryInterface( IStream* iface,REFIID refiid,LPVOID *obj ) { - ICOM_THIS(IStream32Impl,iface); + IStream32Impl *This = (IStream32Impl *)iface; TRACE_(relay)("(%p)->(%s,%p)\n",This,debugstr_guid(refiid),obj); if (!memcmp(&IID_IUnknown,refiid,sizeof(IID_IUnknown))) { @@ -1478,7 +1478,7 @@ HRESULT WINAPI IStream_fnQueryInterface( * IStream32_AddRef [VTABLE] */ ULONG WINAPI IStream_fnAddRef(IStream* iface) { - ICOM_THIS(IStream32Impl,iface); + IStream32Impl *This = (IStream32Impl *)iface; return ++(This->ref); } @@ -1486,7 +1486,7 @@ ULONG WINAPI IStream_fnAddRef(IStream* iface) { * IStream32_Release [VTABLE] */ ULONG WINAPI IStream_fnRelease(IStream* iface) { - ICOM_THIS(IStream32Impl,iface); + IStream32Impl *This = (IStream32Impl *)iface; FlushFileBuffers(This->hf); This->ref--; if (!This->ref) { @@ -1517,7 +1517,7 @@ typedef struct HRESULT WINAPI IStorage16_fnQueryInterface( IStorage16* iface,REFIID refiid,LPVOID *obj ) { - ICOM_THIS(IStorage16Impl,iface); + IStorage16Impl *This = (IStorage16Impl *)iface; TRACE_(relay)("(%p)->(%s,%p)\n",This,debugstr_guid(refiid),obj); @@ -1532,7 +1532,7 @@ HRESULT WINAPI IStorage16_fnQueryInterface( * IStorage16_AddRef [STORAGE.501] */ ULONG WINAPI IStorage16_fnAddRef(IStorage16* iface) { - ICOM_THIS(IStorage16Impl,iface); + IStorage16Impl *This = (IStorage16Impl *)iface; return ++(This->ref); } @@ -1540,7 +1540,7 @@ ULONG WINAPI IStorage16_fnAddRef(IStorage16* iface) { * IStorage16_Release [STORAGE.502] */ ULONG WINAPI IStorage16_fnRelease(IStorage16* iface) { - ICOM_THIS(IStorage16Impl,iface); + IStorage16Impl *This = (IStorage16Impl *)iface; This->ref--; if (This->ref) return This->ref; @@ -1555,7 +1555,7 @@ ULONG WINAPI IStorage16_fnRelease(IStorage16* iface) { HRESULT WINAPI IStorage16_fnStat( LPSTORAGE16 iface,STATSTG16 *pstatstg, DWORD grfStatFlag ) { - ICOM_THIS(IStorage16Impl,iface); + IStorage16Impl *This = (IStorage16Impl *)iface; DWORD len = WideCharToMultiByte( CP_ACP, 0, This->stde.pps_rawname, -1, NULL, 0, NULL, NULL ); LPSTR nameA = HeapAlloc( GetProcessHeap(), 0, len ); @@ -1583,7 +1583,7 @@ HRESULT WINAPI IStorage16_fnStat( HRESULT WINAPI IStorage16_fnCommit( LPSTORAGE16 iface,DWORD commitflags ) { - ICOM_THIS(IStorage16Impl,iface); + IStorage16Impl *This = (IStorage16Impl *)iface; FIXME("(%p)->(0x%08lx),STUB!\n", This,commitflags ); @@ -1594,7 +1594,7 @@ HRESULT WINAPI IStorage16_fnCommit( * IStorage16_CopyTo [STORAGE.507] */ HRESULT WINAPI IStorage16_fnCopyTo(LPSTORAGE16 iface,DWORD ciidExclude,const IID *rgiidExclude,SNB16 SNB16Exclude,IStorage16 *pstgDest) { - ICOM_THIS(IStorage16Impl,iface); + IStorage16Impl *This = (IStorage16Impl *)iface; FIXME("IStorage16(%p)->(0x%08lx,%s,%p,%p),stub!\n", This,ciidExclude,debugstr_guid(rgiidExclude),SNB16Exclude,pstgDest ); @@ -1608,7 +1608,7 @@ HRESULT WINAPI IStorage16_fnCopyTo(LPSTORAGE16 iface,DWORD ciidExclude,const IID HRESULT WINAPI IStorage16_fnCreateStorage( LPSTORAGE16 iface,LPCOLESTR16 pwcsName,DWORD grfMode,DWORD dwStgFormat,DWORD reserved2, IStorage16 **ppstg ) { - ICOM_THIS(IStorage16Impl,iface); + IStorage16Impl *This = (IStorage16Impl *)iface; IStorage16Impl* lpstg; int ppsent,x; struct storage_pps_entry stde; @@ -1673,7 +1673,7 @@ HRESULT WINAPI IStorage16_fnCreateStorage( HRESULT WINAPI IStorage16_fnCreateStream( LPSTORAGE16 iface,LPCOLESTR16 pwcsName,DWORD grfMode,DWORD reserved1,DWORD reserved2, IStream16 **ppstm ) { - ICOM_THIS(IStorage16Impl,iface); + IStorage16Impl *This = (IStorage16Impl *)iface; IStream16Impl* lpstr; int ppsent,x; struct storage_pps_entry stde; @@ -1731,7 +1731,7 @@ HRESULT WINAPI IStorage16_fnCreateStream( HRESULT WINAPI IStorage16_fnOpenStorage( LPSTORAGE16 iface,LPCOLESTR16 pwcsName, IStorage16 *pstgPrio, DWORD grfMode, SNB16 snbExclude, DWORD reserved, IStorage16 **ppstg ) { - ICOM_THIS(IStorage16Impl,iface); + IStorage16Impl *This = (IStorage16Impl *)iface; IStream16Impl* lpstg; WCHAR name[33]; int newpps; @@ -1766,7 +1766,7 @@ HRESULT WINAPI IStorage16_fnOpenStorage( HRESULT WINAPI IStorage16_fnOpenStream( LPSTORAGE16 iface,LPCOLESTR16 pwcsName, void *reserved1, DWORD grfMode, DWORD reserved2, IStream16 **ppstm ) { - ICOM_THIS(IStorage16Impl,iface); + IStorage16Impl *This = (IStorage16Impl *)iface; IStream16Impl* lpstr; WCHAR name[33]; int newpps; diff --git a/reactos/lib/ole32/storage32.c b/reactos/lib/ole32/storage32.c index 8c306cde6e3..9d01a686d4b 100644 --- a/reactos/lib/ole32/storage32.c +++ b/reactos/lib/ole32/storage32.c @@ -160,7 +160,6 @@ static DWORD GetCreationModeFromSTGM(DWORD stgm); */ static IStorageVtbl Storage32Impl_Vtbl = { - ICOM_MSVTABLE_COMPAT_DummyRTTIVALUE StorageBaseImpl_QueryInterface, StorageBaseImpl_AddRef, StorageBaseImpl_Release, @@ -186,7 +185,6 @@ static IStorageVtbl Storage32Impl_Vtbl = */ static IStorageVtbl Storage32InternalImpl_Vtbl = { - ICOM_MSVTABLE_COMPAT_DummyRTTIVALUE StorageBaseImpl_QueryInterface, StorageBaseImpl_AddRef, StorageBaseImpl_Release, @@ -212,7 +210,6 @@ static IStorageVtbl Storage32InternalImpl_Vtbl = */ static IEnumSTATSTGVtbl IEnumSTATSTGImpl_Vtbl = { - ICOM_MSVTABLE_COMPAT_DummyRTTIVALUE IEnumSTATSTGImpl_QueryInterface, IEnumSTATSTGImpl_AddRef, IEnumSTATSTGImpl_Release, @@ -243,7 +240,7 @@ HRESULT WINAPI StorageBaseImpl_QueryInterface( REFIID riid, void** ppvObject) { - ICOM_THIS(StorageBaseImpl,iface); + StorageBaseImpl *This = (StorageBaseImpl *)iface; /* * Perform a sanity check on the parameters. */ @@ -293,7 +290,7 @@ HRESULT WINAPI StorageBaseImpl_QueryInterface( ULONG WINAPI StorageBaseImpl_AddRef( IStorage* iface) { - ICOM_THIS(StorageBaseImpl,iface); + StorageBaseImpl *This = (StorageBaseImpl *)iface; This->ref++; return This->ref; @@ -310,7 +307,7 @@ ULONG WINAPI StorageBaseImpl_AddRef( ULONG WINAPI StorageBaseImpl_Release( IStorage* iface) { - ICOM_THIS(StorageBaseImpl,iface); + StorageBaseImpl *This = (StorageBaseImpl *)iface; /* * Decrease the reference count on this object. */ @@ -349,7 +346,7 @@ HRESULT WINAPI StorageBaseImpl_OpenStream( DWORD reserved2, /* [in] */ IStream** ppstm) /* [out] */ { - ICOM_THIS(StorageBaseImpl,iface); + StorageBaseImpl *This = (StorageBaseImpl *)iface; IEnumSTATSTGImpl* propertyEnumeration; StgStreamImpl* newStream; StgProperty currentProperty; @@ -465,7 +462,7 @@ HRESULT WINAPI StorageBaseImpl_OpenStorage( DWORD reserved, /* [in] */ IStorage** ppstg) /* [out] */ { - ICOM_THIS(StorageBaseImpl,iface); + StorageBaseImpl *This = (StorageBaseImpl *)iface; StorageInternalImpl* newStorage; IEnumSTATSTGImpl* propertyEnumeration; StgProperty currentProperty; @@ -590,7 +587,7 @@ HRESULT WINAPI StorageBaseImpl_EnumElements( DWORD reserved3, /* [in] */ IEnumSTATSTG** ppenum) /* [out] */ { - ICOM_THIS(StorageBaseImpl,iface); + StorageBaseImpl *This = (StorageBaseImpl *)iface; IEnumSTATSTGImpl* newEnum; TRACE("(%p, %ld, %p, %ld, %p)\n", @@ -637,7 +634,7 @@ HRESULT WINAPI StorageBaseImpl_Stat( STATSTG* pstatstg, /* [out] */ DWORD grfStatFlag) /* [in] */ { - ICOM_THIS(StorageBaseImpl,iface); + StorageBaseImpl *This = (StorageBaseImpl *)iface; StgProperty curProperty; BOOL readSuccessful; HRESULT res = STG_E_UNKNOWN; @@ -700,7 +697,7 @@ HRESULT WINAPI StorageBaseImpl_RenameElement( const OLECHAR* pwcsOldName, /* [in] */ const OLECHAR* pwcsNewName) /* [in] */ { - ICOM_THIS(StorageBaseImpl,iface); + StorageBaseImpl *This = (StorageBaseImpl *)iface; IEnumSTATSTGImpl* propertyEnumeration; StgProperty currentProperty; ULONG foundPropertyIndex; @@ -858,7 +855,7 @@ HRESULT WINAPI StorageBaseImpl_CreateStream( DWORD reserved2, /* [in] */ IStream** ppstm) /* [out] */ { - ICOM_THIS(StorageBaseImpl,iface); + StorageBaseImpl *This = (StorageBaseImpl *)iface; IEnumSTATSTGImpl* propertyEnumeration; StgStreamImpl* newStream; StgProperty currentProperty, newStreamProperty; @@ -1008,7 +1005,7 @@ HRESULT WINAPI StorageBaseImpl_SetClass( IStorage* iface, REFCLSID clsid) /* [in] */ { - ICOM_THIS(StorageBaseImpl,iface); + StorageBaseImpl *This = (StorageBaseImpl *)iface; HRESULT hRes = E_FAIL; StgProperty curProperty; BOOL success;