Clang: Handle cancelled future in ClangHoverHandler

This completes

  Clang: Cancel tooltip future on backend restart
  commit 56157f739d

Task-number: QTCREATORBUG-19644
Change-Id: I4a27681368df912003a415cec809c578f7c409cd
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
Reviewed-by: Ivan Donchevskii <ivan.donchevskii@qt.io>
This commit is contained in:
Nikolai Kosjar
2018-01-24 14:47:47 +01:00
parent 2e2b4f0998
commit fa501caa76

View File

@@ -133,6 +133,9 @@ void ClangHoverHandler::identifyMatch(TextEditorWidget *editorWidget,
m_reportPriority = report; m_reportPriority = report;
m_futureWatcher.reset(new QFutureWatcher<CppTools::ToolTipInfo>()); m_futureWatcher.reset(new QFutureWatcher<CppTools::ToolTipInfo>());
QObject::connect(m_futureWatcher.data(), &QFutureWatcherBase::finished, [this]() { QObject::connect(m_futureWatcher.data(), &QFutureWatcherBase::finished, [this]() {
if (m_futureWatcher->isCanceled())
m_reportPriority(Priority_None);
else
processToolTipInfo(m_futureWatcher->result()); processToolTipInfo(m_futureWatcher->result());
}); });
m_futureWatcher->setFuture(future); m_futureWatcher->setFuture(future);