Markus Amsler : Revert "d3d: Remove AddRef from IWineD3DDevice_GetStreamSource.".

Alexandre Julliard julliard at wine.codeweavers.com
Thu Nov 30 13:41:00 CST 2006


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

Author: Markus Amsler <markus.amsler at oribi.org>
Date:   Thu Nov 30 13:33:23 2006 +0100

Revert "d3d: Remove AddRef from IWineD3DDevice_GetStreamSource.".

This reverts commit 16b1e046d8da9b716975c1c483c149ea3826b690.

---

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

diff --git a/dlls/d3d8/device.c b/dlls/d3d8/device.c
index 2b4b6dd..2da8063 100644
--- a/dlls/d3d8/device.c
+++ b/dlls/d3d8/device.c
@@ -1487,6 +1487,7 @@ static HRESULT WINAPI IDirect3DDevice8Im
     rc = IWineD3DDevice_GetStreamSource(This->WineD3DDevice, StreamNumber, (IWineD3DVertexBuffer **)&retStream, 0 /* Offset in bytes */, pStride);
     if (rc == D3D_OK  && NULL != retStream) {
         IWineD3DVertexBuffer_GetParent(retStream, (IUnknown **)pStream);
+        IWineD3DVertexBuffer_Release(retStream);
     }else{
          FIXME("Call to GetStreamSource failed %p\n",  pStride);
         *pStream = NULL;
diff --git a/dlls/d3d9/device.c b/dlls/d3d9/device.c
index d0a456a..62c79c1 100644
--- a/dlls/d3d9/device.c
+++ b/dlls/d3d9/device.c
@@ -789,6 +789,7 @@ HRESULT  WINAPI  IDirect3DDevice9Impl_Ge
     rc = IWineD3DDevice_GetStreamSource(This->WineD3DDevice, StreamNumber, (IWineD3DVertexBuffer **)&retStream, OffsetInBytes, pStride);
     if (rc == D3D_OK  && NULL != retStream) {
         IWineD3DVertexBuffer_GetParent(retStream, (IUnknown **)pStream);
+        IWineD3DVertexBuffer_Release(retStream);
     }else{
         FIXME("Call to GetStreamSource failed %p %p\n", OffsetInBytes, pStride);
         *pStream = NULL;
diff --git a/dlls/wined3d/device.c b/dlls/wined3d/device.c
index 375d57e..616cf4c 100644
--- a/dlls/wined3d/device.c
+++ b/dlls/wined3d/device.c
@@ -2467,6 +2467,7 @@ static HRESULT WINAPI IWineD3DDeviceImpl
         return  WINED3DERR_INVALIDCALL;
     }
 
+    IWineD3DVertexBuffer_AddRef(*pStream); /* We have created a new reference to the VB */
     return WINED3D_OK;
 }
 




More information about the wine-cvs mailing list