Module: wine Branch: master Commit: ce9546f26801ba5be54269dd6588d2509c154d35 URL: http://source.winehq.org/git/wine.git/?a=commit;h=ce9546f26801ba5be54269dd65...
Author: Michael Stefaniuc mstefani@redhat.de Date: Thu Aug 11 00:11:07 2011 +0200
gameux: COM cleanup in gamestatistics.c.
---
dlls/gameux/gamestatistics.c | 23 +++++++++-------------- 1 files changed, 9 insertions(+), 14 deletions(-)
diff --git a/dlls/gameux/gamestatistics.c b/dlls/gameux/gamestatistics.c index 87df886..2e6e21c 100644 --- a/dlls/gameux/gamestatistics.c +++ b/dlls/gameux/gamestatistics.c @@ -651,20 +651,15 @@ static HRESULT GAMEUX_loadGameStatistics(struct GAMEUX_STATS *pStats, */ typedef struct _GameStatisticsImpl { - const struct IGameStatisticsVtbl *lpVtbl; + IGameStatistics IGameStatistics_iface; LONG ref; struct GAMEUX_STATS stats; } GameStatisticsImpl;
static inline GameStatisticsImpl *impl_from_IGameStatistics( IGameStatistics *iface ) { - return (GameStatisticsImpl *)((char*)iface - FIELD_OFFSET(GameStatisticsImpl, lpVtbl)); + return CONTAINING_RECORD(iface, GameStatisticsImpl, IGameStatistics_iface); } -static inline IGameStatistics *IGameStatistics_from_impl( GameStatisticsImpl* This ) -{ - return (struct IGameStatistics*)&This->lpVtbl; -} -
static HRESULT WINAPI GameStatisticsImpl_QueryInterface( IGameStatistics *iface, @@ -1003,7 +998,7 @@ static HRESULT create_IGameStatistics(GameStatisticsImpl** ppStats) if(!(*ppStats)) return E_OUTOFMEMORY;
- (*ppStats)->lpVtbl = &GameStatisticsImplVtbl; + (*ppStats)->IGameStatistics_iface.lpVtbl = &GameStatisticsImplVtbl; (*ppStats)->ref = 1;
TRACE("returning coclass: %p\n", *ppStats); @@ -1015,13 +1010,13 @@ static HRESULT create_IGameStatistics(GameStatisticsImpl** ppStats) */ typedef struct _GameStatisticsMgrImpl { - const struct IGameStatisticsMgrVtbl *lpVtbl; + IGameStatisticsMgr IGameStatisticsMgr_iface; LONG ref; } GameStatisticsMgrImpl;
static inline GameStatisticsMgrImpl *impl_from_IGameStatisticsMgr( IGameStatisticsMgr *iface ) { - return (GameStatisticsMgrImpl *)((char*)iface - FIELD_OFFSET(GameStatisticsMgrImpl, lpVtbl)); + return CONTAINING_RECORD(iface, GameStatisticsMgrImpl, IGameStatisticsMgr_iface); }
@@ -1088,7 +1083,7 @@ static HRESULT STDMETHODCALLTYPE GameStatisticsMgrImpl_GetGameStatistics( { HRESULT hr; WCHAR lpApplicationId[49]; - GameStatisticsImpl *statisticsImpl = NULL; + GameStatisticsImpl *statisticsImpl; IGameStatistics *output_iface;
TRACE("(%p, %s, 0x%x, %p, %p)\n", iface, debugstr_w(GDFBinaryPath), openType, pOpenResult, ppiStats); @@ -1100,7 +1095,7 @@ static HRESULT STDMETHODCALLTYPE GameStatisticsMgrImpl_GetGameStatistics(
if(SUCCEEDED(hr)) { - output_iface = IGameStatistics_from_impl(statisticsImpl); + output_iface = &statisticsImpl->IGameStatistics_iface; hr = GAMEUX_buildStatisticsFilePath(lpApplicationId, statisticsImpl->stats.sStatsFile); }
@@ -1161,10 +1156,10 @@ HRESULT GameStatistics_create( if( !pGameStatistics ) return E_OUTOFMEMORY;
- pGameStatistics->lpVtbl = &GameStatisticsMgrImplVtbl; + pGameStatistics->IGameStatisticsMgr_iface.lpVtbl = &GameStatisticsMgrImplVtbl; pGameStatistics->ref = 1;
- *ppObj = (IUnknown*)(&pGameStatistics->lpVtbl); + *ppObj = (IUnknown*)&pGameStatistics->IGameStatisticsMgr_iface;
TRACE("returning iface %p\n", *ppObj); return S_OK;