From 9a35b121ee4a1eec5ae7e9afb111e541b0b3f146 Mon Sep 17 00:00:00 2001 From: Nikolai Kosjar Date: Mon, 18 Apr 2016 11:12:05 +0200 Subject: C++: Fix accessing invalid file id of Symbol Symbol::_fileId can be null if the Symbol was created with a null translation unit. That is the case for temporary symbols created for lookup purposes (CreateBindings has a _control with no translation unit and thus creates symbols with no fileId). Task-number: QTCREATORBUG-15967 Change-Id: Iee518b39ba3b636fe1658e74179db3aad054d6f2 Reviewed-by: Orgad Shaneh --- src/libs/3rdparty/cplusplus/Symbol.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'src/libs/3rdparty/cplusplus') diff --git a/src/libs/3rdparty/cplusplus/Symbol.cpp b/src/libs/3rdparty/cplusplus/Symbol.cpp index ae20b14bb7..e98b33a8a7 100644 --- a/src/libs/3rdparty/cplusplus/Symbol.cpp +++ b/src/libs/3rdparty/cplusplus/Symbol.cpp @@ -191,10 +191,10 @@ const StringLiteral *Symbol::fileId() const } const char *Symbol::fileName() const -{ return fileId()->chars(); } +{ return _fileId ? _fileId->chars() : ""; } unsigned Symbol::fileNameLength() const -{ return fileId()->size(); } +{ return _fileId ? _fileId->size() : 0; } const Name *Symbol::unqualifiedName() const { -- cgit v1.2.3