diff options
author | Campbell Barton <campbell@blender.org> | 2022-08-31 07:26:56 +0300 |
---|---|---|
committer | Campbell Barton <campbell@blender.org> | 2022-08-31 07:55:47 +0300 |
commit | 4df3cf020bd0038f5533382989a05f4e4f76a111 (patch) | |
tree | 26d1b06066539419669cac09eafe2e0328155d41 /intern | |
parent | 065a1cd0b1b12aa371d52de5e5c7b0f634533ff8 (diff) |
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.
Diffstat (limited to 'intern')
-rw-r--r-- | intern/ghost/intern/GHOST_ContextD3D.cpp | 11 |
1 files changed, 5 insertions, 6 deletions
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<ID3D11Texture2D>(&m_render_target_tex); - backbuffer_res->Release(); + if (backbuffer_res) { + backbuffer_res->QueryInterface<ID3D11Texture2D>(&m_render_target_tex); + backbuffer_res->Release(); + } } if (!m_render_target || !m_render_target_tex) { |