From 0209b0a96cd21cd8d9f0812d0756514555bc2b3b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Stefan=20D=C3=B6singer?= Date: Sat, 26 Jan 2013 13:39:46 +0100 Subject: [PATCH] ddraw: AddViewport holds a reference to the viewport. --- dlls/ddraw/device.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/dlls/ddraw/device.c b/dlls/ddraw/device.c index a65df428bcd..ace6a128d82 100644 --- a/dlls/ddraw/device.c +++ b/dlls/ddraw/device.c @@ -765,6 +765,7 @@ static HRESULT WINAPI d3d_device3_AddViewport(IDirect3DDevice3 *iface, IDirect3D return DDERR_INVALIDPARAMS; wined3d_mutex_lock(); + IDirect3DViewport3_AddRef(viewport); list_add_head(&device->viewport_list, &vp->entry); /* Viewport must be usable for Clear() after AddViewport, so set active_device here. */ vp->active_device = device; @@ -835,6 +836,8 @@ static HRESULT WINAPI d3d_device3_DeleteViewport(IDirect3DDevice3 *iface, IDirec vp->active_device = NULL; list_remove(&vp->entry); + IDirect3DViewport3_Release(viewport); + wined3d_mutex_unlock(); return D3D_OK;