diff options
author | Friedemann Kleint <Friedemann.Kleint@qt.io> | 2023-04-17 15:13:54 +0200 |
---|---|---|
committer | Friedemann Kleint <Friedemann.Kleint@qt.io> | 2023-04-19 12:57:46 +0200 |
commit | 9a21c69f67110e84c01645564cecce7099600152 (patch) | |
tree | 3cf712ef09141725cd14cb65617e18e86e558a8b | |
parent | 0728dbd379169eba040465daf7e95bb4e9cdf0eb (diff) | |
download | qt3d-9a21c69f67110e84c01645564cecce7099600152.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)
Pick-to: 6.5
Task-number: QTBUG-112914
Change-Id: I7e55a782c85cbbdd538eab0a775a5aaa0f6d4b4c
Reviewed-by: Mike Krus <mike.krus@kdab.com>
-rw-r--r-- | src/render/geometry/geometryrenderer.cpp | 3 |
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; } |