aboutsummaryrefslogtreecommitdiffstats
path: root/src/plugins/cppeditor/cppuseselectionsupdater.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/plugins/cppeditor/cppuseselectionsupdater.cpp')
-rw-r--r--src/plugins/cppeditor/cppuseselectionsupdater.cpp6
1 files changed, 5 insertions, 1 deletions
diff --git a/src/plugins/cppeditor/cppuseselectionsupdater.cpp b/src/plugins/cppeditor/cppuseselectionsupdater.cpp
index 5e03ebbe2d..81e1436ccd 100644
--- a/src/plugins/cppeditor/cppuseselectionsupdater.cpp
+++ b/src/plugins/cppeditor/cppuseselectionsupdater.cpp
@@ -98,8 +98,12 @@ void CppUseSelectionsUpdater::update(CallType callType)
// QFuture::waitForFinished seems to block completely, not even
// allowing to process events from QLocalSocket.
- while (!future.isFinished())
+ while (!future.isFinished()) {
+ if (future.isCanceled())
+ return;
+
QCoreApplication::processEvents(QEventLoop::ExcludeUserInputEvents);
+ }
processResults(future.result());
}