summaryrefslogtreecommitdiffstats
path: root/src/logic
diff options
context:
space:
mode:
authorMike Krus <mike.krus@kdab.com>2020-02-05 10:35:45 +0000
committerMike Krus <mike.krus@kdab.com>2020-02-05 10:35:45 +0000
commitce4824da7739dbe51abd201c78db2e8a8e31b6e9 (patch)
tree15fd7c64f4e9d98786b4b901041143efb6462a23 /src/logic
parentf1f387c22dac8748a7edb1f4aa1ea6dac7dfbdfd (diff)
parentd33c1630b09fcdad83f69bfd2530354584b2f42b (diff)
Merge remote-tracking branch '5.14' into 5.15
Diffstat (limited to 'src/logic')
-rw-r--r--src/logic/executor.cpp4
-rw-r--r--src/logic/qlogicaspect.cpp1
2 files changed, 4 insertions, 1 deletions
diff --git a/src/logic/executor.cpp b/src/logic/executor.cpp
index 1c428db47..41d2f2e31 100644
--- a/src/logic/executor.cpp
+++ b/src/logic/executor.cpp
@@ -89,7 +89,9 @@ bool Executor::event(QEvent *e)
*/
void Executor::processLogicFrameUpdates(float dt)
{
- Q_ASSERT(m_scene);
+ if (!m_scene || m_nodeIds.isEmpty())
+ return;
+
const QVector<QNode *> nodes = m_scene->lookupNodes(m_nodeIds);
for (QNode *node : nodes) {
QFrameAction *frameAction = qobject_cast<QFrameAction *>(node);
diff --git a/src/logic/qlogicaspect.cpp b/src/logic/qlogicaspect.cpp
index 649a14f25..c4459a84d 100644
--- a/src/logic/qlogicaspect.cpp
+++ b/src/logic/qlogicaspect.cpp
@@ -84,6 +84,7 @@ void QLogicAspectPrivate::onEngineAboutToShutdown()
// Throw away any pending work that may deadlock during the shutdown procedure
// when the main thread waits for any queued jobs to finish.
m_executor->clearQueueAndProceed();
+ m_executor->setScene(nullptr);
}
void QLogicAspectPrivate::registerBackendTypes()