summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChristian Kandeler <christian.kandeler@qt.io>2020-01-08 11:18:43 +0100
committerChristian Kandeler <christian.kandeler@qt.io>2020-01-08 11:42:41 +0000
commit4b62f2ebd3327b14034e1eccebba19e9495bb3ce (patch)
tree147e5f747b9cb739fc3accbc25f91c2b4169bf49
parent1ab9dc946410e96e0e211347e9d9127740ab18dd (diff)
downloadqt-creator-4b62f2ebd3327b14034e1eccebba19e9495bb3ce.tar.gz
ProjectExplorer: Do not access output window from non-UI thread
Amends b4022f90d5. Fixes: QTCREATORBUG-23442 Change-Id: I9ef369193f32b06c29f43ed7484cb120e1dfc892 Reviewed-by: hjk <hjk@qt.io>
-rw-r--r--src/plugins/projectexplorer/gcctoolchain.cpp9
1 files changed, 6 insertions, 3 deletions
diff --git a/src/plugins/projectexplorer/gcctoolchain.cpp b/src/plugins/projectexplorer/gcctoolchain.cpp
index c5fb985707..526a3e1725 100644
--- a/src/plugins/projectexplorer/gcctoolchain.cpp
+++ b/src/plugins/projectexplorer/gcctoolchain.cpp
@@ -52,6 +52,7 @@
#include <QLineEdit>
#include <QLoggingCategory>
#include <QRegularExpression>
+#include <QTimer>
#include <memory>
@@ -93,9 +94,11 @@ static QByteArray runGcc(const FilePath &gcc, const QStringList &arguments, cons
SynchronousProcessResponse response = cpp.runBlocking(cmdLine);
if (response.result != SynchronousProcessResponse::Finished ||
response.exitCode != 0) {
- Core::MessageManager::write("Compiler feature detection failure!");
- Core::MessageManager::write(response.exitMessage(cmdLine.toUserOutput(), 10));
- Core::MessageManager::write(QString::fromUtf8(response.allRawOutput()));
+ QTimer::singleShot(0, Core::MessageManager::instance(), [cmdLine, response] {
+ Core::MessageManager::write("Compiler feature detection failure!");
+ Core::MessageManager::write(response.exitMessage(cmdLine.toUserOutput(), 10));
+ Core::MessageManager::write(QString::fromUtf8(response.allRawOutput()));
+ });
return QByteArray();
}