=?UTF-8?Q?Stefan=20D=C3=B6singer=20?=: ddraw: AddViewport holds a reference to the viewport.

Alexandre Julliard julliard at winehq.org
Tue Jan 29 12:35:41 CST 2013


Module: wine
Branch: master
Commit: 0209b0a96cd21cd8d9f0812d0756514555bc2b3b
URL:    http://source.winehq.org/git/wine.git/?a=commit;h=0209b0a96cd21cd8d9f0812d0756514555bc2b3b

Author: Stefan Dösinger <stefan at codeweavers.com>
Date:   Sat Jan 26 13:39:46 2013 +0100

ddraw: AddViewport holds a reference to the viewport.

---

 dlls/ddraw/device.c |    3 +++
 1 files changed, 3 insertions(+), 0 deletions(-)

diff --git a/dlls/ddraw/device.c b/dlls/ddraw/device.c
index a65df42..ace6a12 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;




More information about the wine-cvs mailing list