summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTasuku Suzuki <tasuku.suzuki@signal-slot.co.jp>2022-09-30 10:26:59 +0900
committerQt Cherry-pick Bot <cherrypick_bot@qt-project.org>2022-11-29 04:17:31 +0000
commit9e099dc632ecd78642c32c286cc962a227a226d7 (patch)
tree4f9949fe3867635cfefd74f18111af45a66f78d7
parentffb2d6edd387d11dbf04fffb0bdf83ff12ea67ce (diff)
downloadqt3d-9e099dc632ecd78642c32c286cc962a227a226d7.tar.gz
RHI: Fix memory leak in RenderCommand
allocated in Renderer::setBindingAndShaderResourcesForCommand Task-number: QTBUG-106972 Change-Id: I4d0a64f1fbb0e9037b1e4c930f91e1b55412f180 Reviewed-by: Mike Krus <mike.krus@kdab.com> (cherry picked from commit ca499bf7f07f7e39371f6909f3c85084be648084) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
-rw-r--r--src/plugins/renderers/rhi/renderer/rendercommand.cpp6
-rw-r--r--src/plugins/renderers/rhi/renderer/rendercommand_p.h1
2 files changed, 7 insertions, 0 deletions
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;