From ca499bf7f07f7e39371f6909f3c85084be648084 Mon Sep 17 00:00:00 2001 From: Tasuku Suzuki Date: Fri, 30 Sep 2022 10:26:59 +0900 Subject: RHI: Fix memory leak in RenderCommand allocated in Renderer::setBindingAndShaderResourcesForCommand Pick-to: 6.4 Task-number: QTBUG-106972 Change-Id: I4d0a64f1fbb0e9037b1e4c930f91e1b55412f180 Reviewed-by: Mike Krus --- src/plugins/renderers/rhi/renderer/rendercommand.cpp | 6 ++++++ src/plugins/renderers/rhi/renderer/rendercommand_p.h | 1 + 2 files changed, 7 insertions(+) diff --git a/src/plugins/renderers/rhi/renderer/rendercommand.cpp b/src/plugins/renderers/rhi/renderer/rendercommand.cpp index 662bdf1c6..e9ef1e99b 100644 --- a/src/plugins/renderers/rhi/renderer/rendercommand.cpp +++ b/src/plugins/renderers/rhi/renderer/rendercommand.cpp @@ -59,6 +59,12 @@ RenderCommand::RenderCommand() m_workGroups[2] = 0; } +RenderCommand::~RenderCommand() +{ + if (shaderResourceBindings) + shaderResourceBindings->deleteLater(); +} + bool RenderCommand::isValid() const noexcept { return m_isValid && m_rhiShader && pipeline.isValid(); diff --git a/src/plugins/renderers/rhi/renderer/rendercommand_p.h b/src/plugins/renderers/rhi/renderer/rendercommand_p.h index f256a9574..dc5d97f93 100644 --- a/src/plugins/renderers/rhi/renderer/rendercommand_p.h +++ b/src/plugins/renderers/rhi/renderer/rendercommand_p.h @@ -77,6 +77,7 @@ class Q_AUTOTEST_EXPORT RenderCommand { public: RenderCommand(); + ~RenderCommand(); bool isValid() const noexcept; -- cgit v1.2.3