From cb309dc395eec333b02c75946d46c6ca26a35f9c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ri=C4=8Dardas=20Barkauskas?= Date: Tue, 31 May 2011 15:34:47 +0300 Subject: ddraw: Use a This variable in the IDirectDraw3 methods that lack one --- dlls/ddraw/surface.c | 130 ++++++++++++++++++++++++++++++++------------------ 1 files changed, 84 insertions(+), 46 deletions(-) diff --git a/dlls/ddraw/surface.c b/dlls/ddraw/surface.c index b27071d..1fb9630 100644 --- a/dlls/ddraw/surface.c +++ b/dlls/ddraw/surface.c @@ -138,9 +138,10 @@ static HRESULT WINAPI ddraw_surface7_QueryInterface(IDirectDrawSurface7 *iface, static HRESULT WINAPI ddraw_surface3_QueryInterface(IDirectDrawSurface3 *iface, REFIID riid, void **object) { + IDirectDrawSurfaceImpl *This = impl_from_IDirectDrawSurface3(iface); TRACE("iface %p, riid %s, object %p.\n", iface, debugstr_guid(riid), object); - return ddraw_surface7_QueryInterface((IDirectDrawSurface7 *)impl_from_IDirectDrawSurface3(iface), riid, object); + return ddraw_surface7_QueryInterface((IDirectDrawSurface7 *)This, riid, object); } static HRESULT WINAPI ddraw_gamma_control_QueryInterface(IDirectDrawGammaControl *iface, REFIID riid, void **object) @@ -195,9 +196,10 @@ static ULONG WINAPI ddraw_surface7_AddRef(IDirectDrawSurface7 *iface) static ULONG WINAPI ddraw_surface3_AddRef(IDirectDrawSurface3 *iface) { + IDirectDrawSurfaceImpl *This = impl_from_IDirectDrawSurface3(iface); TRACE("iface %p.\n", iface); - return ddraw_surface7_AddRef((IDirectDrawSurface7 *)impl_from_IDirectDrawSurface3(iface)); + return ddraw_surface7_AddRef((IDirectDrawSurface7 *)This); } static ULONG WINAPI ddraw_gamma_control_AddRef(IDirectDrawGammaControl *iface) @@ -401,9 +403,10 @@ static ULONG WINAPI ddraw_surface7_Release(IDirectDrawSurface7 *iface) static ULONG WINAPI ddraw_surface3_Release(IDirectDrawSurface3 *iface) { + IDirectDrawSurfaceImpl *This = impl_from_IDirectDrawSurface3(iface); TRACE("iface %p.\n", iface); - return ddraw_surface7_Release((IDirectDrawSurface7 *)impl_from_IDirectDrawSurface3(iface)); + return ddraw_surface7_Release((IDirectDrawSurface7 *)This); } static ULONG WINAPI ddraw_gamma_control_Release(IDirectDrawGammaControl *iface) @@ -548,6 +551,7 @@ static HRESULT WINAPI ddraw_surface7_GetAttachedSurface(IDirectDrawSurface7 *ifa static HRESULT WINAPI ddraw_surface3_GetAttachedSurface(IDirectDrawSurface3 *iface, DDSCAPS *caps, IDirectDrawSurface3 **attachment) { + IDirectDrawSurfaceImpl *This = impl_from_IDirectDrawSurface3(iface); IDirectDrawSurface7 *attachment7; DDSCAPS2 caps2; HRESULT hr; @@ -559,7 +563,7 @@ static HRESULT WINAPI ddraw_surface3_GetAttachedSurface(IDirectDrawSurface3 *ifa caps2.dwCaps3 = 0; caps2.dwCaps4 = 0; - hr = ddraw_surface7_GetAttachedSurface((IDirectDrawSurface7 *)impl_from_IDirectDrawSurface3(iface), + hr = ddraw_surface7_GetAttachedSurface((IDirectDrawSurface7 *)This, &caps2, &attachment7); if (FAILED(hr)) *attachment = NULL; else *attachment = attachment7 ? @@ -667,10 +671,11 @@ static HRESULT WINAPI ddraw_surface7_Lock(IDirectDrawSurface7 *iface, static HRESULT WINAPI ddraw_surface3_Lock(IDirectDrawSurface3 *iface, RECT *rect, DDSURFACEDESC *surface_desc, DWORD flags, HANDLE h) { + IDirectDrawSurfaceImpl *This = impl_from_IDirectDrawSurface3(iface); TRACE("iface %p, rect %s, surface_desc %p, flags %#x, h %p.\n", iface, wine_dbgstr_rect(rect), surface_desc, flags, h); - return ddraw_surface7_Lock((IDirectDrawSurface7 *)impl_from_IDirectDrawSurface3(iface), + return ddraw_surface7_Lock((IDirectDrawSurface7 *)This, rect, (DDSURFACEDESC2 *)surface_desc, flags, h); } @@ -706,10 +711,11 @@ static HRESULT WINAPI ddraw_surface7_Unlock(IDirectDrawSurface7 *iface, RECT *pR static HRESULT WINAPI ddraw_surface3_Unlock(IDirectDrawSurface3 *iface, void *data) { + IDirectDrawSurfaceImpl *This = impl_from_IDirectDrawSurface3(iface); TRACE("iface %p, data %p.\n", iface, data); /* data might not be the LPRECT of later versions, so drop it. */ - return ddraw_surface7_Unlock((IDirectDrawSurface7 *)impl_from_IDirectDrawSurface3(iface), NULL); + return ddraw_surface7_Unlock((IDirectDrawSurface7 *)This, NULL); } /***************************************************************************** @@ -775,10 +781,11 @@ static HRESULT WINAPI ddraw_surface7_Flip(IDirectDrawSurface7 *iface, IDirectDra static HRESULT WINAPI ddraw_surface3_Flip(IDirectDrawSurface3 *iface, IDirectDrawSurface3 *dst, DWORD flags) { + IDirectDrawSurfaceImpl *This = impl_from_IDirectDrawSurface3(iface); IDirectDrawSurfaceImpl *dst_impl = unsafe_impl_from_IDirectDrawSurface3(dst); TRACE("iface %p, dst %p, flags %#x.\n", iface, dst, flags); - return ddraw_surface7_Flip((IDirectDrawSurface7 *)impl_from_IDirectDrawSurface3(iface), + return ddraw_surface7_Flip((IDirectDrawSurface7 *)This, dst_impl ? (IDirectDrawSurface7 *)dst_impl : NULL, flags); } @@ -872,11 +879,12 @@ static HRESULT WINAPI ddraw_surface7_Blt(IDirectDrawSurface7 *iface, RECT *DestR static HRESULT WINAPI ddraw_surface3_Blt(IDirectDrawSurface3 *iface, RECT *dst_rect, IDirectDrawSurface3 *src_surface, RECT *src_rect, DWORD flags, DDBLTFX *fx) { + IDirectDrawSurfaceImpl *This = impl_from_IDirectDrawSurface3(iface); IDirectDrawSurfaceImpl *src_impl = unsafe_impl_from_IDirectDrawSurface3(src_surface); TRACE("iface %p, dst_rect %s, src_surface %p, src_rect %s, flags %#x, fx %p.\n", iface, wine_dbgstr_rect(dst_rect), src_surface, wine_dbgstr_rect(src_rect), flags, fx); - return ddraw_surface7_Blt((IDirectDrawSurface7 *)impl_from_IDirectDrawSurface3(iface), dst_rect, + return ddraw_surface7_Blt((IDirectDrawSurface7 *)This, dst_rect, src_impl ? (IDirectDrawSurface7 *)src_impl : NULL, src_rect, flags, fx); } @@ -983,7 +991,7 @@ static HRESULT WINAPI ddraw_surface7_AddAttachedSurface(IDirectDrawSurface7 *ifa static HRESULT WINAPI ddraw_surface3_AddAttachedSurface(IDirectDrawSurface3 *iface, IDirectDrawSurface3 *attachment) { - IDirectDrawSurfaceImpl *surface = impl_from_IDirectDrawSurface3(iface); + IDirectDrawSurfaceImpl *This = impl_from_IDirectDrawSurface3(iface); IDirectDrawSurfaceImpl *attach_impl = unsafe_impl_from_IDirectDrawSurface3(attachment); TRACE("iface %p, attachment %p.\n", iface, attachment); @@ -993,19 +1001,19 @@ static HRESULT WINAPI ddraw_surface3_AddAttachedSurface(IDirectDrawSurface3 *ifa * -> offscreen plain surfaces can be attached to primaries * -> primaries can be attached to offscreen plain surfaces * -> z buffers can be attached to primaries */ - if (surface->surface_desc.ddsCaps.dwCaps & (DDSCAPS_PRIMARYSURFACE | DDSCAPS_OFFSCREENPLAIN) + if (This->surface_desc.ddsCaps.dwCaps & (DDSCAPS_PRIMARYSURFACE | DDSCAPS_OFFSCREENPLAIN) && attach_impl->surface_desc.ddsCaps.dwCaps & (DDSCAPS_PRIMARYSURFACE | DDSCAPS_OFFSCREENPLAIN)) { /* Sizes have to match */ - if (attach_impl->surface_desc.dwWidth != surface->surface_desc.dwWidth - || attach_impl->surface_desc.dwHeight != surface->surface_desc.dwHeight) + if (attach_impl->surface_desc.dwWidth != This->surface_desc.dwWidth + || attach_impl->surface_desc.dwHeight != This->surface_desc.dwHeight) { WARN("Surface sizes do not match.\n"); return DDERR_CANNOTATTACHSURFACE; } /* OK */ } - else if (surface->surface_desc.ddsCaps.dwCaps & (DDSCAPS_PRIMARYSURFACE | DDSCAPS_3DDEVICE) + else if (This->surface_desc.ddsCaps.dwCaps & (DDSCAPS_PRIMARYSURFACE | DDSCAPS_3DDEVICE) && attach_impl->surface_desc.ddsCaps.dwCaps & (DDSCAPS_ZBUFFER)) { /* OK */ @@ -1016,7 +1024,7 @@ static HRESULT WINAPI ddraw_surface3_AddAttachedSurface(IDirectDrawSurface3 *ifa return DDERR_CANNOTATTACHSURFACE; } - return ddraw_surface_attach_surface(surface, attach_impl); + return ddraw_surface_attach_surface(This, attach_impl); } /***************************************************************************** @@ -1088,10 +1096,11 @@ static HRESULT WINAPI ddraw_surface7_DeleteAttachedSurface(IDirectDrawSurface7 * static HRESULT WINAPI ddraw_surface3_DeleteAttachedSurface(IDirectDrawSurface3 *iface, DWORD flags, IDirectDrawSurface3 *attachment) { + IDirectDrawSurfaceImpl *This = impl_from_IDirectDrawSurface3(iface); IDirectDrawSurfaceImpl *attachment_impl = unsafe_impl_from_IDirectDrawSurface3(attachment); TRACE("iface %p, flags %#x, attachment %p.\n", iface, flags, attachment); - return ddraw_surface7_DeleteAttachedSurface((IDirectDrawSurface7 *)impl_from_IDirectDrawSurface3(iface), flags, + return ddraw_surface7_DeleteAttachedSurface((IDirectDrawSurface7 *)This, flags, attachment_impl ? (IDirectDrawSurface7 *)attachment_impl : NULL); } @@ -1116,9 +1125,10 @@ static HRESULT WINAPI ddraw_surface7_AddOverlayDirtyRect(IDirectDrawSurface7 *if static HRESULT WINAPI ddraw_surface3_AddOverlayDirtyRect(IDirectDrawSurface3 *iface, RECT *rect) { + IDirectDrawSurfaceImpl *This = impl_from_IDirectDrawSurface3(iface); TRACE("iface %p, rect %s.\n", iface, wine_dbgstr_rect(rect)); - return ddraw_surface7_AddOverlayDirtyRect((IDirectDrawSurface7 *)impl_from_IDirectDrawSurface3(iface), rect); + return ddraw_surface7_AddOverlayDirtyRect((IDirectDrawSurface7 *)This, rect); } /***************************************************************************** @@ -1163,9 +1173,10 @@ static HRESULT WINAPI ddraw_surface7_GetDC(IDirectDrawSurface7 *iface, HDC *hdc) static HRESULT WINAPI ddraw_surface3_GetDC(IDirectDrawSurface3 *iface, HDC *dc) { + IDirectDrawSurfaceImpl *This = impl_from_IDirectDrawSurface3(iface); TRACE("iface %p, dc %p.\n", iface, dc); - return ddraw_surface7_GetDC((IDirectDrawSurface7 *)impl_from_IDirectDrawSurface3(iface), dc); + return ddraw_surface7_GetDC((IDirectDrawSurface7 *)This, dc); } /***************************************************************************** @@ -1196,9 +1207,10 @@ static HRESULT WINAPI ddraw_surface7_ReleaseDC(IDirectDrawSurface7 *iface, HDC h static HRESULT WINAPI ddraw_surface3_ReleaseDC(IDirectDrawSurface3 *iface, HDC dc) { + IDirectDrawSurfaceImpl *This = impl_from_IDirectDrawSurface3(iface); TRACE("iface %p, dc %p.\n", iface, dc); - return ddraw_surface7_ReleaseDC((IDirectDrawSurface7 *)impl_from_IDirectDrawSurface3(iface), dc); + return ddraw_surface7_ReleaseDC((IDirectDrawSurface7 *)This, dc); } /***************************************************************************** @@ -1229,12 +1241,13 @@ static HRESULT WINAPI ddraw_surface7_GetCaps(IDirectDrawSurface7 *iface, DDSCAPS static HRESULT WINAPI ddraw_surface3_GetCaps(IDirectDrawSurface3 *iface, DDSCAPS *caps) { + IDirectDrawSurfaceImpl *This = impl_from_IDirectDrawSurface3(iface); DDSCAPS2 caps2; HRESULT hr; TRACE("iface %p, caps %p.\n", iface, caps); - hr = ddraw_surface7_GetCaps((IDirectDrawSurface7 *)impl_from_IDirectDrawSurface3(iface), &caps2); + hr = ddraw_surface7_GetCaps((IDirectDrawSurface7 *)This, &caps2); if (FAILED(hr)) return hr; caps->dwCaps = caps2.dwCaps; @@ -1415,9 +1428,10 @@ static HRESULT WINAPI ddraw_surface7_PageLock(IDirectDrawSurface7 *iface, DWORD static HRESULT WINAPI ddraw_surface3_PageLock(IDirectDrawSurface3 *iface, DWORD flags) { + IDirectDrawSurfaceImpl *This = impl_from_IDirectDrawSurface3(iface); TRACE("iface %p, flags %#x.\n", iface, flags); - return ddraw_surface7_PageLock((IDirectDrawSurface7 *)impl_from_IDirectDrawSurface3(iface), flags); + return ddraw_surface7_PageLock((IDirectDrawSurface7 *)This, flags); } /***************************************************************************** @@ -1441,9 +1455,10 @@ static HRESULT WINAPI ddraw_surface7_PageUnlock(IDirectDrawSurface7 *iface, DWOR static HRESULT WINAPI ddraw_surface3_PageUnlock(IDirectDrawSurface3 *iface, DWORD flags) { + IDirectDrawSurfaceImpl *This = impl_from_IDirectDrawSurface3(iface); TRACE("iface %p, flags %#x.\n", iface, flags); - return ddraw_surface7_PageUnlock((IDirectDrawSurface7 *)impl_from_IDirectDrawSurface3(iface), flags); + return ddraw_surface7_PageUnlock((IDirectDrawSurface7 *)This, flags); } /***************************************************************************** @@ -1468,9 +1483,10 @@ static HRESULT WINAPI ddraw_surface7_BltBatch(IDirectDrawSurface7 *iface, DDBLTB static HRESULT WINAPI ddraw_surface3_BltBatch(IDirectDrawSurface3 *iface, DDBLTBATCH *batch, DWORD count, DWORD flags) { + IDirectDrawSurfaceImpl *This = impl_from_IDirectDrawSurface3(iface); TRACE("iface %p, batch %p, count %u, flags %#x.\n", iface, batch, count, flags); - return ddraw_surface7_BltBatch((IDirectDrawSurface7 *)impl_from_IDirectDrawSurface3(iface), batch, count, flags); + return ddraw_surface7_BltBatch((IDirectDrawSurface7 *)This, batch, count, flags); } /***************************************************************************** @@ -1552,6 +1568,7 @@ static HRESULT CALLBACK EnumCallback(IDirectDrawSurface7 *surface, DDSURFACEDESC static HRESULT WINAPI ddraw_surface3_EnumAttachedSurfaces(IDirectDrawSurface3 *iface, void *context, LPDDENUMSURFACESCALLBACK callback) { + IDirectDrawSurfaceImpl *This = impl_from_IDirectDrawSurface3(iface); struct callback_info info; TRACE("iface %p, context %p, callback %p.\n", iface, context, callback); @@ -1559,7 +1576,7 @@ static HRESULT WINAPI ddraw_surface3_EnumAttachedSurfaces(IDirectDrawSurface3 *i info.callback = callback; info.context = context; - return ddraw_surface7_EnumAttachedSurfaces((IDirectDrawSurface7 *)impl_from_IDirectDrawSurface3(iface), + return ddraw_surface7_EnumAttachedSurfaces((IDirectDrawSurface7 *)This, &info, EnumCallback); } @@ -1588,6 +1605,7 @@ static HRESULT WINAPI ddraw_surface7_EnumOverlayZOrders(IDirectDrawSurface7 *ifa static HRESULT WINAPI ddraw_surface3_EnumOverlayZOrders(IDirectDrawSurface3 *iface, DWORD flags, void *context, LPDDENUMSURFACESCALLBACK callback) { + IDirectDrawSurfaceImpl *This = impl_from_IDirectDrawSurface3(iface); struct callback_info info; TRACE("iface %p, flags %#x, context %p, callback %p.\n", iface, flags, context, callback); @@ -1595,7 +1613,7 @@ static HRESULT WINAPI ddraw_surface3_EnumOverlayZOrders(IDirectDrawSurface3 *ifa info.callback = callback; info.context = context; - return ddraw_surface7_EnumOverlayZOrders((IDirectDrawSurface7 *)impl_from_IDirectDrawSurface3(iface), + return ddraw_surface7_EnumOverlayZOrders((IDirectDrawSurface7 *)This, flags, &info, EnumCallback); } @@ -1630,9 +1648,10 @@ static HRESULT WINAPI ddraw_surface7_GetBltStatus(IDirectDrawSurface7 *iface, DW static HRESULT WINAPI ddraw_surface3_GetBltStatus(IDirectDrawSurface3 *iface, DWORD flags) { + IDirectDrawSurfaceImpl *This = impl_from_IDirectDrawSurface3(iface); TRACE("iface %p, flags %#x.\n", iface, flags); - return ddraw_surface7_GetBltStatus((IDirectDrawSurface7 *)impl_from_IDirectDrawSurface3(iface), flags); + return ddraw_surface7_GetBltStatus((IDirectDrawSurface7 *)This, flags); } /***************************************************************************** @@ -1709,9 +1728,10 @@ static HRESULT WINAPI ddraw_surface7_GetColorKey(IDirectDrawSurface7 *iface, DWO static HRESULT WINAPI ddraw_surface3_GetColorKey(IDirectDrawSurface3 *iface, DWORD flags, DDCOLORKEY *color_key) { + IDirectDrawSurfaceImpl *This = impl_from_IDirectDrawSurface3(iface); TRACE("iface %p, flags %#x, color_key %p.\n", iface, flags, color_key); - return ddraw_surface7_GetColorKey((IDirectDrawSurface7 *)impl_from_IDirectDrawSurface3(iface), flags, color_key); + return ddraw_surface7_GetColorKey((IDirectDrawSurface7 *)This, flags, color_key); } /***************************************************************************** @@ -1745,9 +1765,10 @@ static HRESULT WINAPI ddraw_surface7_GetFlipStatus(IDirectDrawSurface7 *iface, D static HRESULT WINAPI ddraw_surface3_GetFlipStatus(IDirectDrawSurface3 *iface, DWORD flags) { + IDirectDrawSurfaceImpl *This = impl_from_IDirectDrawSurface3(iface); TRACE("iface %p, flags %#x.\n", iface, flags); - return ddraw_surface7_GetFlipStatus((IDirectDrawSurface7 *)impl_from_IDirectDrawSurface3(iface), flags); + return ddraw_surface7_GetFlipStatus((IDirectDrawSurface7 *)This, flags); } /***************************************************************************** @@ -1777,9 +1798,10 @@ static HRESULT WINAPI ddraw_surface7_GetOverlayPosition(IDirectDrawSurface7 *ifa static HRESULT WINAPI ddraw_surface3_GetOverlayPosition(IDirectDrawSurface3 *iface, LONG *x, LONG *y) { + IDirectDrawSurfaceImpl *This = impl_from_IDirectDrawSurface3(iface); TRACE("iface %p, x %p, y %p.\n", iface, x, y); - return ddraw_surface7_GetOverlayPosition((IDirectDrawSurface7 *)impl_from_IDirectDrawSurface3(iface), x, y); + return ddraw_surface7_GetOverlayPosition((IDirectDrawSurface7 *)This, x, y); } /***************************************************************************** @@ -1815,9 +1837,10 @@ static HRESULT WINAPI ddraw_surface7_GetPixelFormat(IDirectDrawSurface7 *iface, static HRESULT WINAPI ddraw_surface3_GetPixelFormat(IDirectDrawSurface3 *iface, DDPIXELFORMAT *pixel_format) { + IDirectDrawSurfaceImpl *This = impl_from_IDirectDrawSurface3(iface); TRACE("iface %p, pixel_format %p.\n", iface, pixel_format); - return ddraw_surface7_GetPixelFormat((IDirectDrawSurface7 *)impl_from_IDirectDrawSurface3(iface), pixel_format); + return ddraw_surface7_GetPixelFormat((IDirectDrawSurface7 *)This, pixel_format); } /***************************************************************************** @@ -1860,7 +1883,7 @@ static HRESULT WINAPI ddraw_surface7_GetSurfaceDesc(IDirectDrawSurface7 *iface, static HRESULT WINAPI ddraw_surface3_GetSurfaceDesc(IDirectDrawSurface3 *iface, DDSURFACEDESC *surface_desc) { - IDirectDrawSurfaceImpl *surface = impl_from_IDirectDrawSurface3(iface); + IDirectDrawSurfaceImpl *This = impl_from_IDirectDrawSurface3(iface); TRACE("iface %p, surface_desc %p.\n", iface, surface_desc); @@ -1873,7 +1896,7 @@ static HRESULT WINAPI ddraw_surface3_GetSurfaceDesc(IDirectDrawSurface3 *iface, } EnterCriticalSection(&ddraw_cs); - DD_STRUCT_COPY_BYSIZE(surface_desc, (DDSURFACEDESC *)&surface->surface_desc); + DD_STRUCT_COPY_BYSIZE(surface_desc, (DDSURFACEDESC *)&This->surface_desc); TRACE("Returning surface desc:\n"); if (TRACE_ON(ddraw)) { @@ -1909,9 +1932,10 @@ static HRESULT WINAPI ddraw_surface7_Initialize(IDirectDrawSurface7 *iface, static HRESULT WINAPI ddraw_surface3_Initialize(IDirectDrawSurface3 *iface, IDirectDraw *ddraw, DDSURFACEDESC *surface_desc) { + IDirectDrawSurfaceImpl *This = impl_from_IDirectDrawSurface3(iface); TRACE("iface %p, ddraw %p, surface_desc %p.\n", iface, ddraw, surface_desc); - return ddraw_surface7_Initialize((IDirectDrawSurface7 *)impl_from_IDirectDrawSurface3(iface), + return ddraw_surface7_Initialize((IDirectDrawSurface7 *)This, ddraw, (DDSURFACEDESC2 *)surface_desc); } @@ -1980,9 +2004,10 @@ static HRESULT WINAPI ddraw_surface7_IsLost(IDirectDrawSurface7 *iface) static HRESULT WINAPI ddraw_surface3_IsLost(IDirectDrawSurface3 *iface) { + IDirectDrawSurfaceImpl *This = impl_from_IDirectDrawSurface3(iface); TRACE("iface %p.\n", iface); - return ddraw_surface7_IsLost((IDirectDrawSurface7 *)impl_from_IDirectDrawSurface3(iface)); + return ddraw_surface7_IsLost((IDirectDrawSurface7 *)This); } /***************************************************************************** @@ -2017,9 +2042,10 @@ static HRESULT WINAPI ddraw_surface7_Restore(IDirectDrawSurface7 *iface) static HRESULT WINAPI ddraw_surface3_Restore(IDirectDrawSurface3 *iface) { + IDirectDrawSurfaceImpl *This = impl_from_IDirectDrawSurface3(iface); TRACE("iface %p.\n", iface); - return ddraw_surface7_Restore((IDirectDrawSurface7 *)impl_from_IDirectDrawSurface3(iface)); + return ddraw_surface7_Restore((IDirectDrawSurface7 *)This); } /***************************************************************************** @@ -2049,9 +2075,10 @@ static HRESULT WINAPI ddraw_surface7_SetOverlayPosition(IDirectDrawSurface7 *ifa static HRESULT WINAPI ddraw_surface3_SetOverlayPosition(IDirectDrawSurface3 *iface, LONG x, LONG y) { + IDirectDrawSurfaceImpl *This = impl_from_IDirectDrawSurface3(iface); TRACE("iface %p, x %d, y %d.\n", iface, x, y); - return ddraw_surface7_SetOverlayPosition((IDirectDrawSurface7 *)impl_from_IDirectDrawSurface3(iface), x, y); + return ddraw_surface7_SetOverlayPosition((IDirectDrawSurface7 *)This, x, y); } /***************************************************************************** @@ -2095,11 +2122,12 @@ static HRESULT WINAPI ddraw_surface7_UpdateOverlay(IDirectDrawSurface7 *iface, R static HRESULT WINAPI ddraw_surface3_UpdateOverlay(IDirectDrawSurface3 *iface, RECT *src_rect, IDirectDrawSurface3 *dst_surface, RECT *dst_rect, DWORD flags, DDOVERLAYFX *fx) { + IDirectDrawSurfaceImpl *This = impl_from_IDirectDrawSurface3(iface); IDirectDrawSurfaceImpl *dst_impl = unsafe_impl_from_IDirectDrawSurface3(dst_surface); TRACE("iface %p, src_rect %s, dst_surface %p, dst_rect %s, flags %#x, fx %p.\n", iface, wine_dbgstr_rect(src_rect), dst_surface, wine_dbgstr_rect(dst_rect), flags, fx); - return ddraw_surface7_UpdateOverlay((IDirectDrawSurface7 *)impl_from_IDirectDrawSurface3(iface), src_rect, + return ddraw_surface7_UpdateOverlay((IDirectDrawSurface7 *)This, src_rect, dst_impl ? (IDirectDrawSurface7 *)dst_impl : NULL, dst_rect, flags, fx); } @@ -2123,9 +2151,10 @@ static HRESULT WINAPI ddraw_surface7_UpdateOverlayDisplay(IDirectDrawSurface7 *i static HRESULT WINAPI ddraw_surface3_UpdateOverlayDisplay(IDirectDrawSurface3 *iface, DWORD flags) { + IDirectDrawSurfaceImpl *This = impl_from_IDirectDrawSurface3(iface); TRACE("iface %p, flags %#x.\n", iface, flags); - return ddraw_surface7_UpdateOverlayDisplay((IDirectDrawSurface7 *)impl_from_IDirectDrawSurface3(iface), flags); + return ddraw_surface7_UpdateOverlayDisplay((IDirectDrawSurface7 *)This, flags); } /***************************************************************************** @@ -2160,10 +2189,11 @@ static HRESULT WINAPI ddraw_surface7_UpdateOverlayZOrder(IDirectDrawSurface7 *if static HRESULT WINAPI ddraw_surface3_UpdateOverlayZOrder(IDirectDrawSurface3 *iface, DWORD flags, IDirectDrawSurface3 *reference) { + IDirectDrawSurfaceImpl *This = impl_from_IDirectDrawSurface3(iface); IDirectDrawSurfaceImpl *reference_impl = unsafe_impl_from_IDirectDrawSurface3(reference); TRACE("iface %p, flags %#x, reference %p.\n", iface, flags, reference); - return ddraw_surface7_UpdateOverlayZOrder((IDirectDrawSurface7 *)impl_from_IDirectDrawSurface3(iface), flags, + return ddraw_surface7_UpdateOverlayZOrder((IDirectDrawSurface7 *)This, flags, reference_impl ? (IDirectDrawSurface7 *)reference_impl : NULL); } @@ -2216,9 +2246,10 @@ static HRESULT WINAPI ddraw_surface7_GetDDInterface(IDirectDrawSurface7 *iface, static HRESULT WINAPI ddraw_surface3_GetDDInterface(IDirectDrawSurface3 *iface, void **ddraw) { + IDirectDrawSurfaceImpl *This = impl_from_IDirectDrawSurface3(iface); TRACE("iface %p, ddraw %p.\n", iface, ddraw); - return ddraw_surface7_GetDDInterface((IDirectDrawSurface7 *)impl_from_IDirectDrawSurface3(iface), ddraw); + return ddraw_surface7_GetDDInterface((IDirectDrawSurface7 *)This, ddraw); } /* This seems also windows implementation specific - I don't think WineD3D needs this */ @@ -2413,11 +2444,12 @@ static HRESULT WINAPI ddraw_surface7_BltFast(IDirectDrawSurface7 *iface, DWORD d static HRESULT WINAPI ddraw_surface3_BltFast(IDirectDrawSurface3 *iface, DWORD dst_x, DWORD dst_y, IDirectDrawSurface3 *src_surface, RECT *src_rect, DWORD flags) { + IDirectDrawSurfaceImpl *This = impl_from_IDirectDrawSurface3(iface); IDirectDrawSurfaceImpl *src_impl = unsafe_impl_from_IDirectDrawSurface3(src_surface); TRACE("iface %p, dst_x %u, dst_y %u, src_surface %p, src_rect %s, flags %#x.\n", iface, dst_x, dst_y, src_surface, wine_dbgstr_rect(src_rect), flags); - return ddraw_surface7_BltFast((IDirectDrawSurface7 *)impl_from_IDirectDrawSurface3(iface), dst_x, dst_y, + return ddraw_surface7_BltFast((IDirectDrawSurface7 *)This, dst_x, dst_y, src_impl ? (IDirectDrawSurface7 *)src_impl : NULL, src_rect, flags); } @@ -2463,9 +2495,10 @@ static HRESULT WINAPI ddraw_surface7_GetClipper(IDirectDrawSurface7 *iface, IDir static HRESULT WINAPI ddraw_surface3_GetClipper(IDirectDrawSurface3 *iface, IDirectDrawClipper **clipper) { + IDirectDrawSurfaceImpl *This = impl_from_IDirectDrawSurface3(iface); TRACE("iface %p, clipper %p.\n", iface, clipper); - return ddraw_surface7_GetClipper((IDirectDrawSurface7 *)impl_from_IDirectDrawSurface3(iface), clipper); + return ddraw_surface7_GetClipper((IDirectDrawSurface7 *)This, clipper); } /***************************************************************************** @@ -2525,9 +2558,10 @@ static HRESULT WINAPI ddraw_surface7_SetClipper(IDirectDrawSurface7 *iface, IDir static HRESULT WINAPI ddraw_surface3_SetClipper(IDirectDrawSurface3 *iface, IDirectDrawClipper *clipper) { + IDirectDrawSurfaceImpl *This = impl_from_IDirectDrawSurface3(iface); TRACE("iface %p, clipper %p.\n", iface, clipper); - return ddraw_surface7_SetClipper((IDirectDrawSurface7 *)impl_from_IDirectDrawSurface3(iface), clipper); + return ddraw_surface7_SetClipper((IDirectDrawSurface7 *)This, clipper); } /***************************************************************************** @@ -2624,9 +2658,10 @@ static HRESULT WINAPI ddraw_surface7_SetSurfaceDesc(IDirectDrawSurface7 *iface, static HRESULT WINAPI ddraw_surface3_SetSurfaceDesc(IDirectDrawSurface3 *iface, DDSURFACEDESC *surface_desc, DWORD flags) { + IDirectDrawSurfaceImpl *This = impl_from_IDirectDrawSurface3(iface); TRACE("iface %p, surface_desc %p, flags %#x.\n", iface, surface_desc, flags); - return ddraw_surface7_SetSurfaceDesc((IDirectDrawSurface7 *)impl_from_IDirectDrawSurface3(iface), + return ddraw_surface7_SetSurfaceDesc((IDirectDrawSurface7 *)This, (DDSURFACEDESC2 *)surface_desc, flags); } @@ -2674,9 +2709,10 @@ static HRESULT WINAPI ddraw_surface7_GetPalette(IDirectDrawSurface7 *iface, IDir static HRESULT WINAPI ddraw_surface3_GetPalette(IDirectDrawSurface3 *iface, IDirectDrawPalette **palette) { + IDirectDrawSurfaceImpl *This = impl_from_IDirectDrawSurface3(iface); TRACE("iface %p, palette %p.\n", iface, palette); - return ddraw_surface7_GetPalette((IDirectDrawSurface7 *)impl_from_IDirectDrawSurface3(iface), palette); + return ddraw_surface7_GetPalette((IDirectDrawSurface7 *)This, palette); } /***************************************************************************** @@ -2811,9 +2847,10 @@ static HRESULT WINAPI ddraw_surface7_SetColorKey(IDirectDrawSurface7 *iface, DWO static HRESULT WINAPI ddraw_surface3_SetColorKey(IDirectDrawSurface3 *iface, DWORD flags, DDCOLORKEY *color_key) { + IDirectDrawSurfaceImpl *This = impl_from_IDirectDrawSurface3(iface); TRACE("iface %p, flags %#x, color_key %p.\n", iface, flags, color_key); - return ddraw_surface7_SetColorKey((IDirectDrawSurface7 *)impl_from_IDirectDrawSurface3(iface), flags, color_key); + return ddraw_surface7_SetColorKey((IDirectDrawSurface7 *)This, flags, color_key); } /***************************************************************************** @@ -2893,9 +2930,10 @@ static HRESULT WINAPI ddraw_surface7_SetPalette(IDirectDrawSurface7 *iface, IDir static HRESULT WINAPI ddraw_surface3_SetPalette(IDirectDrawSurface3 *iface, IDirectDrawPalette *palette) { + IDirectDrawSurfaceImpl *This = impl_from_IDirectDrawSurface3(iface); TRACE("iface %p, palette %p.\n", iface, palette); - return ddraw_surface7_SetPalette((IDirectDrawSurface7 *)impl_from_IDirectDrawSurface3(iface), palette); + return ddraw_surface7_SetPalette((IDirectDrawSurface7 *)This, palette); } /********************************************************** -- 1.7.5.1