summaryrefslogtreecommitdiffstats
path: root/src/core/aspects/qaspectmanager_p.h
diff options
context:
space:
mode:
authorPaul Lemire <paul.lemire@kdab.com>2014-07-16 15:14:16 +0200
committerSean Harmer <sean.harmer@kdab.com>2014-07-20 00:18:50 +0200
commit0f0bf28b05e5d08767aa98f83dc6d5c898cdcc17 (patch)
treedc3d5505057b900981d6d0d8c54ef90547391104 /src/core/aspects/qaspectmanager_p.h
parentc38954f6e6721f9129fe854512bbfdee9fe94546 (diff)
Ground work to have a proper shutdown
QAspectEngine shutdown invokes QAspectManager quit which will stop the QAspectThread. Prior to exiting, the QAspectThread calls QAspectManager shutdown which cleans up all aspects and deletes them. Renderer stops the RenderThread when cleanup is called and properly deletes the QGraphicContext and the RenderThread. Note: Everything is called as it should. However it always ends up in a segfault caused by the QFont::cleanup when the QThreadStorage of the main thread GuiApplication is destroyed. I've not been able to find the cause of that. Change-Id: I3b7baa843af4d0418b5d04e6d1cda88b962ded7f Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
Diffstat (limited to 'src/core/aspects/qaspectmanager_p.h')
-rw-r--r--src/core/aspects/qaspectmanager_p.h3
1 files changed, 2 insertions, 1 deletions
diff --git a/src/core/aspects/qaspectmanager_p.h b/src/core/aspects/qaspectmanager_p.h
index deb1c4d94..46e3eb535 100644
--- a/src/core/aspects/qaspectmanager_p.h
+++ b/src/core/aspects/qaspectmanager_p.h
@@ -70,7 +70,8 @@ public :
QScheduler *m_scheduler;
QJobManagerInterface *m_jobManager;
QChangeArbiter *m_changeArbiter;
- bool m_runMainLoop;
+ QAtomicInt m_runMainLoop;
+ QAtomicInt m_terminated;
};
} // Qt3D