diff options
author | Daniel Teske <daniel.teske@theqtcompany.com> | 2014-11-18 17:05:09 +0100 |
---|---|---|
committer | Daniel Teske <daniel.teske@theqtcompany.com> | 2014-11-20 13:25:42 +0100 |
commit | f6a9d01ddf59abc41d6b543c06fa81c5eeb673a5 (patch) | |
tree | 0f3e39f0f17f16463f60d4489a689ffb7230773d /src/plugins/qmakeprojectmanager/qmakeproject.h | |
parent | 7f72b7bf6597f906c4f69a67a0aae5087d352a76 (diff) | |
download | qt-creator-f6a9d01ddf59abc41d6b543c06fa81c5eeb673a5.tar.gz |
QmakeProject: Fix crash on unloading project while parsing
Callign applyAsyncEvaluate in the desctructor might lead to further
parses, which we don't want. So bail out early in applyAsyncEvaluate.
Task-number: QTCREATORBUG-13421
Change-Id: I776ff477363a3985ebc26e9160c58c2ab9c910b7
Reviewed-by: Orgad Shaneh <orgads@gmail.com>
Diffstat (limited to 'src/plugins/qmakeprojectmanager/qmakeproject.h')
-rw-r--r-- | src/plugins/qmakeprojectmanager/qmakeproject.h | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/src/plugins/qmakeprojectmanager/qmakeproject.h b/src/plugins/qmakeprojectmanager/qmakeproject.h index 103dd6983a..7959c5242b 100644 --- a/src/plugins/qmakeprojectmanager/qmakeproject.h +++ b/src/plugins/qmakeprojectmanager/qmakeproject.h @@ -141,6 +141,9 @@ public: ProjectExplorer::ProjectImporter *createProjectImporter() const; + enum AsyncUpdateState { Base, AsyncFullUpdatePending, AsyncPartialUpdatePending, AsyncUpdateInProgress, ShuttingDown }; + AsyncUpdateState asyncUpdateState() const; + signals: void proFileUpdated(QmakeProjectManager::QmakeProFileNode *node, bool, bool); void buildDirectoryInitialized(); @@ -203,7 +206,6 @@ private: QTimer m_asyncUpdateTimer; QFutureInterface<void> *m_asyncUpdateFutureInterface; int m_pendingEvaluateFuturesCount; - enum AsyncUpdateState { Base, AsyncFullUpdatePending, AsyncPartialUpdatePending, AsyncUpdateInProgress, ShuttingDown }; AsyncUpdateState m_asyncUpdateState; bool m_cancelEvaluate; QList<QmakeProFileNode *> m_partialEvaluate; |