aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDaiwei Li <daiweili@suitabletech.com>2015-02-02 16:34:27 -0800
committerDaiwei Li <daiweili@suitabletech.com>2015-02-25 07:28:48 +0000
commitd43a963e49956ba772644e9f3448dc3672147f77 (patch)
treecbc6bc963b0ae128b235323d59d4ae3142ebf05f
parent06ff96d49159274aa47584db58c5451f28f1cb36 (diff)
Fix crash in overdraw and change visualizers
It appears to be possible for node->element()->batch to be NULL Task-number: QTBUG-43129 Change-Id: If6e4e265a02ee305bf3aa9cad387b7a73648367a Reviewed-by: Gunnar Sletta <gunnar@sletta.org>
-rw-r--r--src/quick/scenegraph/coreapi/qsgbatchrenderer.cpp4
1 files changed, 2 insertions, 2 deletions
diff --git a/src/quick/scenegraph/coreapi/qsgbatchrenderer.cpp b/src/quick/scenegraph/coreapi/qsgbatchrenderer.cpp
index dbea0faa9a..b9266974e0 100644
--- a/src/quick/scenegraph/coreapi/qsgbatchrenderer.cpp
+++ b/src/quick/scenegraph/coreapi/qsgbatchrenderer.cpp
@@ -2815,7 +2815,7 @@ void Renderer::visualizeChangesPrepare(Node *n, uint parentChanges)
void Renderer::visualizeChanges(Node *n)
{
- if (n->type() == QSGNode::GeometryNodeType && m_visualizeChanceSet.contains(n)) {
+ if (n->type() == QSGNode::GeometryNodeType && n->element()->batch && m_visualizeChanceSet.contains(n)) {
uint dirty = m_visualizeChanceSet.value(n);
bool tinted = (dirty & QSGNODE_DIRTY_PARENT) != 0;
@@ -2852,7 +2852,7 @@ void Renderer::visualizeChanges(Node *n)
void Renderer::visualizeOverdraw_helper(Node *node)
{
- if (node->type() == QSGNode::GeometryNodeType) {
+ if (node->type() == QSGNode::GeometryNodeType && node->element()->batch) {
VisualizeShader *shader = static_cast<VisualizeShader *>(m_shaderManager->visualizeProgram);
QSGGeometryNode *gn = static_cast<QSGGeometryNode *>(node->sgNode);