diff options
author | Nikolai Kosjar <nikolai.kosjar@theqtcompany.com> | 2015-07-10 14:57:42 +0200 |
---|---|---|
committer | Nikolai Kosjar <nikolai.kosjar@theqtcompany.com> | 2015-07-10 14:04:19 +0000 |
commit | 418fc32f6a11a042ca6de2c6befea4ecb32a3381 (patch) | |
tree | 1535d999655a5288672ffba0d7c488233ed8edc1 /src/plugins/cpptools/baseeditordocumentparser.h | |
parent | 5902a622985158eda3f47bc98d8c4d4c80426eba (diff) | |
download | qt-creator-418fc32f6a11a042ca6de2c6befea4ecb32a3381.tar.gz |
Clang: Do not call DocumentManager::modifiedDocuments() from worker thread
This is unsafe.
Change-Id: I8ac075a7289afa0d84785e37b1325d186a153000
Reviewed-by: Erik Verbruggen <erik.verbruggen@theqtcompany.com>
Diffstat (limited to 'src/plugins/cpptools/baseeditordocumentparser.h')
-rw-r--r-- | src/plugins/cpptools/baseeditordocumentparser.h | 11 |
1 files changed, 9 insertions, 2 deletions
diff --git a/src/plugins/cpptools/baseeditordocumentparser.h b/src/plugins/cpptools/baseeditordocumentparser.h index c5a1974811..b9c8ecaadc 100644 --- a/src/plugins/cpptools/baseeditordocumentparser.h +++ b/src/plugins/cpptools/baseeditordocumentparser.h @@ -33,6 +33,7 @@ #include "cppmodelmanager.h" #include "cpptools_global.h" +#include "cppworkingcopy.h" #include <QObject> @@ -59,7 +60,13 @@ public: Configuration configuration() const; void setConfiguration(const Configuration &configuration); - void update(WorkingCopy workingCopy); + struct CPPTOOLS_EXPORT InMemoryInfo { + InMemoryInfo(bool withModifiedFiles); + + WorkingCopy workingCopy; + Utils::FileNameList modifiedFiles; + }; + void update(const InMemoryInfo &info); ProjectPart::Ptr projectPart() const; @@ -78,7 +85,7 @@ protected: mutable QMutex m_stateAndConfigurationMutex; private: - virtual void updateHelper(WorkingCopy workingCopy) = 0; + virtual void updateHelper(const InMemoryInfo &inMemoryInfo) = 0; const QString m_filePath; Configuration m_configuration; |