summaryrefslogtreecommitdiff
path: root/src/plugins/clangrefactoring/refactoringengine.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/plugins/clangrefactoring/refactoringengine.cpp')
-rw-r--r--src/plugins/clangrefactoring/refactoringengine.cpp17
1 files changed, 12 insertions, 5 deletions
diff --git a/src/plugins/clangrefactoring/refactoringengine.cpp b/src/plugins/clangrefactoring/refactoringengine.cpp
index 75f79a7a2b..7c69cfc9d1 100644
--- a/src/plugins/clangrefactoring/refactoringengine.cpp
+++ b/src/plugins/clangrefactoring/refactoringengine.cpp
@@ -94,13 +94,20 @@ void RefactoringEngine::startLocalRenaming(const CppTools::CursorInEditor &data,
CppTools::Usages RefactoringEngine::locationsAt(const CppTools::CursorInEditor &data) const
{
- int line = 0, column = 0;
+ CppTools::Usages usages;
+
QTextCursor cursor = Utils::Text::wordStartCursor(data.cursor());
- Utils::Text::convertPosition(cursor.document(), cursor.position(), &line, &column);
+ Utils::OptionalLineColumn lineColumn = Utils::Text::convertPosition(cursor.document(),
+ cursor.position());
+
+ if (lineColumn) {
+ const QByteArray filePath = data.filePath().toString().toUtf8();
+ const ClangBackEnd::FilePathId filePathId = m_filePathCache.filePathId(ClangBackEnd::FilePathView(filePath));
+
+ usages = m_symbolQuery.sourceUsagesAt(filePathId, lineColumn->line, lineColumn->column + 1);
+ }
- const QByteArray filePath = data.filePath().toString().toUtf8();
- const ClangBackEnd::FilePathId filePathId = m_filePathCache.filePathId(ClangBackEnd::FilePathView(filePath));
- return m_symbolQuery.sourceUsagesAt(filePathId, line, column + 1);
+ return usages;
}
void RefactoringEngine::globalRename(const CppTools::CursorInEditor &data,