summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/plugins/cpptools/cppfindreferences.cpp9
1 files changed, 8 insertions, 1 deletions
diff --git a/src/plugins/cpptools/cppfindreferences.cpp b/src/plugins/cpptools/cppfindreferences.cpp
index b0097b2066..d0a83d768b 100644
--- a/src/plugins/cpptools/cppfindreferences.cpp
+++ b/src/plugins/cpptools/cppfindreferences.cpp
@@ -259,8 +259,15 @@ void CppFindReferences::findAll(const Snapshot &snapshot, Symbol *symbol)
Core::ProgressManager *progressManager = Core::ICore::instance()->progressManager();
+ // find the canonical symbol.
+ Symbol *canonicalSymbol = symbol;
+ for (; symbol; symbol = symbol->next()) {
+ if (symbol->name() == canonicalSymbol->name())
+ canonicalSymbol = symbol;
+ }
+
QFuture<Core::Utils::FileSearchResult> result =
- QtConcurrent::run(&find_helper, snapshot, symbol);
+ QtConcurrent::run(&find_helper, snapshot, canonicalSymbol);
m_watcher.setFuture(result);