From ab37551ca0c2c21708a2c1ff405c07edb52caadd Mon Sep 17 00:00:00 2001 From: Kevin Ottens Date: Tue, 3 May 2016 09:00:49 +0200 Subject: Make sure this is a NodeUpdated change Otherwise we did the wrong cast and then read into an invalid object. This happens because we now receive other even types like node creation. Change-Id: I084135a01623bfd7b01637545d5bf6d50059e1da Reviewed-by: Sean Harmer --- src/render/io/scene.cpp | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) (limited to 'src/render/io/scene.cpp') diff --git a/src/render/io/scene.cpp b/src/render/io/scene.cpp index bd6cbee84..cd0190c2a 100644 --- a/src/render/io/scene.cpp +++ b/src/render/io/scene.cpp @@ -80,10 +80,12 @@ void Scene::initializeFromPeer(const Qt3DCore::QNodeCreatedChangeBasePtr &change void Scene::sceneChangeEvent(const Qt3DCore::QSceneChangePtr &e) { - QNodePropertyChangePtr propertyChange = qSharedPointerCast(e); - if (propertyChange->propertyName() == QByteArrayLiteral("source")) { - m_source = propertyChange->value().toUrl(); - m_sceneManager->addSceneData(m_source, peerId()); + if (e->type() == NodeUpdated) { + QNodePropertyChangePtr propertyChange = qSharedPointerCast(e); + if (propertyChange->propertyName() == QByteArrayLiteral("source")) { + m_source = propertyChange->value().toUrl(); + m_sceneManager->addSceneData(m_source, peerId()); + } } markDirty(AbstractRenderer::AllDirty); } -- cgit v1.2.3