diff options
author | Sean Harmer <sean.harmer@kdab.com> | 2014-11-02 20:39:03 +0000 |
---|---|---|
committer | Sean Harmer <sean.harmer@kdab.com> | 2014-11-03 17:42:51 +0100 |
commit | ea3f99ebe1c846f46fa73d86aa65c4d660a848c4 (patch) | |
tree | 4d97dd34a99cec4e7ed56a872fb9d64dbb19d68a /src/core/qchangearbiter.cpp | |
parent | 46c7d625c0ffe6ec609efdb28a0ea5e065e48bb3 (diff) |
More work towards a clean shutdown
The QAspectJobManager doesn't really need to be public now I think but
as it still is let's make the base class have it's own private class
that inherits from QObjectPrivate.
The ThreadWeaver threads all get cleaned up cleanly upon shutdown.
When trying with cylinder-cpp with all the rendering stuff in main()
commented out, we consistently get the crash in QFontCache. With the
rendering stuff enabled there is also an assert inside the swapbuffers()
call. This is because the render thread is not cleanly shutdown yet.
The QFontCache crash is something to do with freeing thread-local
storage. I will continue to investigate.
Change-Id: Ib3ad3ea04ae4859d27f0dd4604b00bc5a38859a1
Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
Diffstat (limited to 'src/core/qchangearbiter.cpp')
-rw-r--r-- | src/core/qchangearbiter.cpp | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/src/core/qchangearbiter.cpp b/src/core/qchangearbiter.cpp index 9393afe52..435d7cf8a 100644 --- a/src/core/qchangearbiter.cpp +++ b/src/core/qchangearbiter.cpp @@ -41,7 +41,7 @@ #include "qchangearbiter_p.h" #include "qcomponent.h" -#include "qaspectjobmanagerinterface.h" +#include "qabstractaspectjobmanager.h" #include "corelogging.h" #include "qsceneobserverinterface.h" @@ -100,7 +100,7 @@ QChangeArbiter::~QChangeArbiter() m_changeQueues.clear(); } -void QChangeArbiter::initialize(QAspectJobManagerInterface *jobManager) +void QChangeArbiter::initialize(QAbstractAspectJobManager *jobManager) { Q_CHECK_PTR(jobManager); m_jobManager = jobManager; |