diff options
author | Joni Poikelin <joni.poikelin@qt.io> | 2020-03-04 14:54:49 +0200 |
---|---|---|
committer | Joni Poikelin <joni.poikelin@qt.io> | 2020-03-06 13:09:56 +0200 |
commit | 8b34a40c2c8e7468633555268cb1bea921e85a75 (patch) | |
tree | 471cc05bfa154fd274800f30f0d7e15a03346c97 | |
parent | 597c9df33c2c8a9e91e3ad1de48b1200ebca6586 (diff) |
Workaround for some odd crashes
Sometimes there seem to be null Geometry pointers that are somehow
related to quickly swapping QGeometry. This can be worked around by
skipping those null pointers.
Change-Id: Id2ffbd0eb08f205a7739825932b6d3f0afeab4af
Reviewed-by: Mike Krus <mike.krus@kdab.com>
-rw-r--r-- | src/render/renderers/opengl/renderer/renderview.cpp | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/src/render/renderers/opengl/renderer/renderview.cpp b/src/render/renderers/opengl/renderer/renderview.cpp index c00a92629..ef15d7fcd 100644 --- a/src/render/renderers/opengl/renderer/renderview.cpp +++ b/src/render/renderers/opengl/renderer/renderview.cpp @@ -647,6 +647,9 @@ EntityRenderCommandData RenderView::buildDrawRenderCommands(const QVector<Entity HGeometry geometryHandle = m_manager->geometryManager()->lookupHandle(geometryRenderer->geometryId()); Geometry *geometry = m_manager->geometryManager()->data(geometryHandle); + if (geometry == nullptr) + continue; + // 1 RenderCommand per RenderPass pass on an Entity with a Mesh for (const RenderPassParameterData &passData : renderPassData) { // Add the RenderPass Parameters |