summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorFriedemann Kleint <Friedemann.Kleint@qt.io>2023-04-17 15:13:54 +0200
committerQt Cherry-pick Bot <cherrypick_bot@qt-project.org>2023-04-19 14:17:24 +0000
commit82cb267d7b7d061dc9268a30dbeb035c31ffcfe3 (patch)
treef85b2fe02b702f0d4dd9e087116e639f8c18b4ae
parent58c680dac0af5e697b8199f45ded5383600ed174 (diff)
downloadqt3d-82cb267d7b7d061dc9268a30dbeb035c31ffcfe3.tar.gz
Fix valgrind issue in GeometryRenderer
Initialize member hasView, fixing: ==20448== Conditional jump or move depends on uninitialised value(s) ==20448== Uninitialised value was created by a heap allocation ==20448== at 0x484DE30: memalign (in /usr/libexec/valgrind/vgpreload_memcheck-amd64-linux.so) ==20448== by 0x484DF92: posix_memalign (in /usr/libexec/valgrind/vgpreload_memcheck-amd64-linux.so) ==20448== by 0x4DC9DEE: _mm_malloc (mm_malloc.h:45) ==20448== by 0x4DC9DEE: Qt3DCore::AlignedAllocator::allocate(unsigned int) (qresourcemanager.cpp:63) ==20448== by 0x4B45C7F: allocateBucket (qresourcemanager_p.h:265) ==20448== by 0x4B45C7F: allocateResource (qresourcemanager_p.h:202) ==20448== by 0x4B45C7F: getOrAcquireHandle (qresourcemanager_p.h:369) ==20448== by 0x4B45C7F: getOrCreateResource (qresourcemanager_p.h:396) ==20448== by 0x4B45C7F: Qt3DRender::Render::GeometryRendererFunctor::create(Qt3DCore::QNodeId) const (geometryrenderer.cpp:191) Task-number: QTBUG-112914 Change-Id: I7e55a782c85cbbdd538eab0a775a5aaa0f6d4b4c Reviewed-by: Mike Krus <mike.krus@kdab.com> (cherry picked from commit 9a21c69f67110e84c01645564cecce7099600152) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
-rw-r--r--src/render/geometry/geometryrenderer.cpp3
1 files changed, 2 insertions, 1 deletions
diff --git a/src/render/geometry/geometryrenderer.cpp b/src/render/geometry/geometryrenderer.cpp
index 7ff05367f..d1f1c2993 100644
--- a/src/render/geometry/geometryrenderer.cpp
+++ b/src/render/geometry/geometryrenderer.cpp
@@ -32,6 +32,7 @@ GeometryRenderer::GeometryRenderer()
, m_primitiveRestartEnabled(false)
, m_primitiveType(QGeometryRenderer::Triangles)
, m_dirty(false)
+ , m_hasView(false)
, m_manager(nullptr)
, m_sortIndex(-1.f)
{
@@ -55,7 +56,7 @@ void GeometryRenderer::cleanup()
m_primitiveRestartEnabled = false;
m_primitiveType = QGeometryRenderer::Triangles;
m_geometryId = Qt3DCore::QNodeId();
- m_dirty = false;
+ m_hasView = m_dirty = false;
m_geometryFactory.reset();
m_sortIndex = -1.f;
}