From 4df3cf020bd0038f5533382989a05f4e4f76a111 Mon Sep 17 00:00:00 2001 From: Campbell Barton Date: Wed, 31 Aug 2022 14:26:56 +1000 Subject: Fix uninitialized variable use for ID3D11RenderTargetView When 'm_render_target' was NULL, backbuffer_res would be used without being assigned. While it seems likely this code-path is rarely used (if at all), resolve the logical error. --- intern/ghost/intern/GHOST_ContextD3D.cpp | 11 +++++------ 1 file changed, 5 insertions(+), 6 deletions(-) (limited to 'intern') diff --git a/intern/ghost/intern/GHOST_ContextD3D.cpp b/intern/ghost/intern/GHOST_ContextD3D.cpp index 4fc05cf912c..857323941ea 100644 --- a/intern/ghost/intern/GHOST_ContextD3D.cpp +++ b/intern/ghost/intern/GHOST_ContextD3D.cpp @@ -123,8 +123,6 @@ class GHOST_SharedOpenGLResource { ID3D11RenderTargetView *render_target = nullptr) : m_device(device), m_device_ctx(device_ctx), m_cur_width(width), m_cur_height(height) { - ID3D11Resource *backbuffer_res; - if (!render_target) { D3D11_TEXTURE2D_DESC texDesc{}; D3D11_RENDER_TARGET_VIEW_DESC renderTargetViewDesc{}; @@ -157,11 +155,12 @@ class GHOST_SharedOpenGLResource { m_render_target = render_target; if (m_render_target) { + ID3D11Resource *backbuffer_res = nullptr; m_render_target->GetResource(&backbuffer_res); - } - if (backbuffer_res) { - backbuffer_res->QueryInterface(&m_render_target_tex); - backbuffer_res->Release(); + if (backbuffer_res) { + backbuffer_res->QueryInterface(&m_render_target_tex); + backbuffer_res->Release(); + } } if (!m_render_target || !m_render_target_tex) { -- cgit v1.2.3