Module: wine Branch: master Commit: e809a500d73c07c0012e80e185e95a5255a82e38 URL: https://source.winehq.org/git/wine.git/?a=commit;h=e809a500d73c07c0012e80e18...
Author: Stefan Dösinger stefan@codeweavers.com Date: Wed Mar 13 22:04:23 2019 +0330
ddraw: Clear *clipper on failure in ddraw_surface7_GetClipper().
Signed-off-by: Stefan Dösinger stefan@codeweavers.com Signed-off-by: Henri Verbeet hverbeet@codeweavers.com Signed-off-by: Alexandre Julliard julliard@winehq.org
---
dlls/ddraw/surface.c | 26 ++++++-------------------- 1 file changed, 6 insertions(+), 20 deletions(-)
diff --git a/dlls/ddraw/surface.c b/dlls/ddraw/surface.c index 2b788bd..b8cc2d2 100644 --- a/dlls/ddraw/surface.c +++ b/dlls/ddraw/surface.c @@ -4408,39 +4408,25 @@ static HRESULT WINAPI DECLSPEC_HOTPATCH ddraw_surface1_BltFast(IDirectDrawSurfac src_impl ? &src_impl->IDirectDrawSurface7_iface : NULL, src_rect, flags); }
-/***************************************************************************** - * IDirectDrawSurface7::GetClipper - * - * Returns the IDirectDrawClipper interface of the clipper assigned to this - * surface - * - * Params: - * Clipper: Address to store the interface pointer at - * - * Returns: - * DD_OK on success - * DDERR_INVALIDPARAMS if Clipper is NULL - * DDERR_NOCLIPPERATTACHED if there's no clipper attached - * - *****************************************************************************/ -static HRESULT WINAPI ddraw_surface7_GetClipper(IDirectDrawSurface7 *iface, IDirectDrawClipper **Clipper) +static HRESULT WINAPI ddraw_surface7_GetClipper(IDirectDrawSurface7 *iface, IDirectDrawClipper **clipper) { struct ddraw_surface *surface = impl_from_IDirectDrawSurface7(iface);
- TRACE("iface %p, clipper %p.\n", iface, Clipper); + TRACE("iface %p, clipper %p.\n", iface, clipper);
- if (!Clipper) + if (!clipper) return DDERR_INVALIDPARAMS;
wined3d_mutex_lock(); if (!surface->clipper) { wined3d_mutex_unlock(); + *clipper = NULL; return DDERR_NOCLIPPERATTACHED; }
- *Clipper = &surface->clipper->IDirectDrawClipper_iface; - IDirectDrawClipper_AddRef(*Clipper); + *clipper = &surface->clipper->IDirectDrawClipper_iface; + IDirectDrawClipper_AddRef(*clipper); wined3d_mutex_unlock();
return DD_OK;