diff options
Diffstat (limited to 'src/plugins/clangrefactoring/refactoringengine.cpp')
-rw-r--r-- | src/plugins/clangrefactoring/refactoringengine.cpp | 17 |
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, |