diff options
author | Gunnar Sletta <gunnar.sletta@jollamobile.com> | 2014-07-01 14:48:07 +0200 |
---|---|---|
committer | Gunnar Sletta <gunnar.sletta@jollamobile.com> | 2014-07-04 08:44:06 +0200 |
commit | 48d93e0d854b3f9a2486a2393fee38496fd57bd9 (patch) | |
tree | 962a1a3fdb7a63653de15ba2cd0706209534a120 /src/qml/qml/qqmltypeloader_p.h | |
parent | f4a1a9be39fd59e38231544c84e4b931f42b8de4 (diff) |
Avoid race condition in QQmlEngine on shutdown.
The QQmlTypeLoader was deleted (and its thread shut down) when
the QQmlEnginePrivate was destroyed. However, the QQmlTypeLoader
runs a thread which would happiliy make calls on the engine and
its managed data. Fix this by stopping the QQmlTypeLoader's
thread right away in QQmlEngine.
Task-number: QTBUG-39905
Change-Id: Ida8e95d083f79237c74b036fd3521133a9fa4ac7
Reviewed-by: Erik Verbruggen <erik.verbruggen@digia.com>
Diffstat (limited to 'src/qml/qml/qqmltypeloader_p.h')
-rw-r--r-- | src/qml/qml/qqmltypeloader_p.h | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/src/qml/qml/qqmltypeloader_p.h b/src/qml/qml/qqmltypeloader_p.h index b09ac15861..3d0b77e2a5 100644 --- a/src/qml/qml/qqmltypeloader_p.h +++ b/src/qml/qml/qqmltypeloader_p.h @@ -233,6 +233,7 @@ public: QQmlEngine *engine() const; void initializeEngine(QQmlExtensionInterface *, const char *); + void invalidate(); protected: void shutdownThread(); |