Merge "Merge remote-tracking branch 'origin/4.6'"

This commit is contained in:
Eike Ziller
2018-04-26 12:28:00 +00:00
committed by The Qt Project
12 changed files with 119 additions and 107 deletions

View File

@@ -51,10 +51,14 @@ void RefactoringEngine::startLocalRenaming(const CppTools::CursorInEditor &data,
if (cursorFuture.isCanceled())
return defaultCallback();
QObject::connect(&m_watcher, &FutureCursorWatcher::finished, [=]() {
if (m_watcher.isCanceled())
if (m_watcher)
m_watcher->cancel();
m_watcher.reset(new FutureCursorWatcher());
QObject::connect(m_watcher.get(), &FutureCursorWatcher::finished, [=]() {
if (m_watcher->isCanceled())
return defaultCallback();
const CppTools::CursorInfo info = m_watcher.result();
const CppTools::CursorInfo info = m_watcher->result();
if (info.useRanges.empty())
return defaultCallback();
@@ -72,7 +76,7 @@ void RefactoringEngine::startLocalRenaming(const CppTools::CursorInEditor &data,
renameSymbolsCallback(symbolName, container, data.cursor().document()->revision());
});
m_watcher.setFuture(cursorFuture);
m_watcher->setFuture(cursorFuture);
}
}

View File

@@ -57,7 +57,7 @@ public:
private:
using FutureCursorWatcher = QFutureWatcher<CppTools::CursorInfo>;
FutureCursorWatcher m_watcher;
std::unique_ptr<FutureCursorWatcher> m_watcher;
};
} // namespace ClangRefactoring