[13/20] WineD3D: Do not keep internal references on index buffers

Stefan Dösinger stefan at codeweavers.com
Sat Jan 6 11:26:49 CST 2007


-------------- next part --------------
From 003f0b66d01b0fa19f80968b15fd0a861f80cf18 Mon Sep 17 00:00:00 2001
From: Stefan Doesinger <stefan at codeweavers.com>
Date: Sat, 6 Jan 2007 16:52:30 +0100
Subject: [PATCH] WineD3D: Do not keep internal references on index buffers

---
 dlls/wined3d/device.c     |   11 -----------
 dlls/wined3d/stateblock.c |    6 ------
 2 files changed, 0 insertions(+), 17 deletions(-)

diff --git a/dlls/wined3d/device.c b/dlls/wined3d/device.c
index e43a2e6..5957c52 100644
--- a/dlls/wined3d/device.c
+++ b/dlls/wined3d/device.c
@@ -2999,13 +2999,6 @@ static HRESULT WINAPI IWineD3DDeviceImpl
         return WINED3D_OK;
     }
 
-    if (NULL != pIndexData) {
-        IWineD3DIndexBuffer_AddRef(pIndexData);
-    }
-    if (NULL != oldIdxs) {
-        IWineD3DIndexBuffer_Release(oldIdxs);
-    }
-
     /* So far only the base vertex index is tracked */
     if(BaseVertexIndex != oldBaseIndex) {
         IWineD3DDeviceImpl_MarkStateDirty(This, STATE_STREAMSRC);
@@ -4770,10 +4763,6 @@ static HRESULT WINAPI IWineD3DDeviceImpl
         idxStride = 4;
     }
 
-    if (This->stateBlock->pIndexData) {
-        IWineD3DIndexBuffer_Release(This->stateBlock->pIndexData);
-    }
-
     /* Note in the following, it's not this type, but that's the purpose of streamIsUP */
     This->stateBlock->streamSource[0] = (IWineD3DVertexBuffer *)pVertexStreamZeroData;
     This->stateBlock->streamIsUP = TRUE;
diff --git a/dlls/wined3d/stateblock.c b/dlls/wined3d/stateblock.c
index 0b3f6e8..dba9e8a 100644
--- a/dlls/wined3d/stateblock.c
+++ b/dlls/wined3d/stateblock.c
@@ -233,12 +233,6 @@ static ULONG  WINAPI IWineD3DStateBlockI
             int counter;
             FIXME("Releasing primary stateblock\n");
 
-            /* free any index data */
-            if (This->pIndexData) {
-                IWineD3DIndexBuffer_Release(This->pIndexData);
-                This->pIndexData = NULL;
-            }
-
             /* NOTE: according to MSDN: The application is responsible for making sure the texture references are cleared down */
             for (counter = 0; counter < GL_LIMITS(sampler_stages); counter++) {
                 if (This->textures[counter]) {
-- 
1.4.2.4



More information about the wine-patches mailing list