summaryrefslogtreecommitdiffstats
path: root/src/render/jobs/loadscenejob.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/render/jobs/loadscenejob.cpp')
-rw-r--r--src/render/jobs/loadscenejob.cpp11
1 files changed, 7 insertions, 4 deletions
diff --git a/src/render/jobs/loadscenejob.cpp b/src/render/jobs/loadscenejob.cpp
index 3eb6e5e14..d0d8be9ef 100644
--- a/src/render/jobs/loadscenejob.cpp
+++ b/src/render/jobs/loadscenejob.cpp
@@ -67,16 +67,19 @@ void LoadSceneJob::run()
if (!sceneIOHandler->isFileTypeSupported(m_source))
continue;
- // File type is supported
+ // File type is supported, try to load it
sceneIOHandler->setSource(m_source);
- sceneSubTree = sceneIOHandler->scene();
- break;
+ Qt3DCore::QEntity *sub = sceneIOHandler->scene();
+ if (sub) {
+ sceneSubTree = sub;
+ break;
+ }
}
// Set clone of sceneTree in sceneComponent. This will move the sceneSubTree
// to the QCoreApplication thread which is where the frontend object tree lives.
Scene *scene = m_managers->sceneManager()->lookupResource(m_sceneComponent);
- if (scene)
+ if (scene && sceneSubTree)
scene->setSceneSubtree(sceneSubTree);
}