Nikolay Sivov : d3d10/effect: Reduce duplication when releasing shader objects.
Module: wine Branch: master Commit: 3d5f8b98698be75508a221898ea9accf2943028e URL: https://source.winehq.org/git/wine.git/?a=commit;h=3d5f8b98698be75508a221898... Author: Nikolay Sivov <nsivov(a)codeweavers.com> Date: Thu Oct 28 10:46:38 2021 +0300 d3d10/effect: Reduce duplication when releasing shader objects. Signed-off-by: Nikolay Sivov <nsivov(a)codeweavers.com> Signed-off-by: Matteo Bruni <mbruni(a)codeweavers.com> Signed-off-by: Alexandre Julliard <julliard(a)winehq.org> --- dlls/d3d10/d3d10_private.h | 1 + dlls/d3d10/effect.c | 12 ++---------- 2 files changed, 3 insertions(+), 10 deletions(-) diff --git a/dlls/d3d10/d3d10_private.h b/dlls/d3d10/d3d10_private.h index 11b3b4e9482..75d00371ba6 100644 --- a/dlls/d3d10/d3d10_private.h +++ b/dlls/d3d10/d3d10_private.h @@ -87,6 +87,7 @@ struct d3d10_effect_shader_variable ID3D10VertexShader *vs; ID3D10PixelShader *ps; ID3D10GeometryShader *gs; + IUnknown *object; } shader; unsigned int resource_count; diff --git a/dlls/d3d10/effect.c b/dlls/d3d10/effect.c index 20a929b9f7c..5da8d2065f7 100644 --- a/dlls/d3d10/effect.c +++ b/dlls/d3d10/effect.c @@ -2983,18 +2983,10 @@ static void d3d10_effect_shader_variable_destroy(struct d3d10_effect_shader_vari switch (type) { case D3D10_SVT_VERTEXSHADER: - if (s->shader.vs) - ID3D10VertexShader_Release(s->shader.vs); - break; - case D3D10_SVT_PIXELSHADER: - if (s->shader.ps) - ID3D10PixelShader_Release(s->shader.ps); - break; - case D3D10_SVT_GEOMETRYSHADER: - if (s->shader.gs) - ID3D10GeometryShader_Release(s->shader.gs); + if (s->shader.object) + IUnknown_Release(s->shader.object); break; default:
participants (1)
-
Alexandre Julliard