From c2f231750740a645ec7f17e60c3e662a3df76b42 Mon Sep 17 00:00:00 2001 From: Roberto Raggi <roberto.raggi@nokia.com> Date: Mon, 10 May 2010 16:21:12 +0200 Subject: [PATCH] Check for valid translation units. --- src/shared/cplusplus/Symbol.cpp | 15 +++++++-------- 1 file changed, 7 insertions(+), 8 deletions(-) diff --git a/src/shared/cplusplus/Symbol.cpp b/src/shared/cplusplus/Symbol.cpp index fa2d00f3162..63672f13c00 100644 --- a/src/shared/cplusplus/Symbol.cpp +++ b/src/shared/cplusplus/Symbol.cpp @@ -209,18 +209,17 @@ void Symbol::setDeprecated(bool isDeprecated) void Symbol::setSourceLocation(unsigned sourceLocation, TranslationUnit *translationUnit) { _sourceLocation = sourceLocation; - unsigned offset = 0; - if (! _sourceLocation) { - _isGenerated = false; - - } else { + if (translationUnit) { const Token &tk = translationUnit->tokenAt(sourceLocation); _isGenerated = tk.f.generated; - offset = tk.offset; + translationUnit->getPosition(tk.offset, &_line, &_column, &_fileId); + } else { + _isGenerated = false; + _line = 0; + _column = 0; + _fileId = 0; } - - translationUnit->getPosition(offset, &_line, &_column, &_fileId); } unsigned Symbol::line() const -- GitLab