[PATCH 5/5] d3dx9: Skip the AddRef / Release calls if the new texture is the same as the old one.
Matteo Bruni
mbruni at codeweavers.com
Mon Apr 14 12:33:00 CDT 2014
---
dlls/d3dx9_36/effect.c | 3 +++
1 file changed, 3 insertions(+)
diff --git a/dlls/d3dx9_36/effect.c b/dlls/d3dx9_36/effect.c
index 9988f7c..61f1716 100644
--- a/dlls/d3dx9_36/effect.c
+++ b/dlls/d3dx9_36/effect.c
@@ -2398,6 +2398,9 @@ static HRESULT d3dx9_base_effect_set_texture(struct d3dx9_base_effect *base,
{
struct IDirect3DBaseTexture9 *oltexture = *(struct IDirect3DBaseTexture9 **)param->data;
+ if (texture == oltexture)
+ return D3D_OK;
+
if (texture) IDirect3DBaseTexture9_AddRef(texture);
if (oltexture) IDirect3DBaseTexture9_Release(oltexture);
--
1.8.3.2
More information about the wine-patches
mailing list