summaryrefslogtreecommitdiff
path: root/src/libs/cplusplus/LookupContext.cpp
diff options
context:
space:
mode:
authorNikolai Kosjar <nikolai.kosjar@theqtcompany.com>2015-03-13 11:25:12 +0100
committerNikolai Kosjar <nikolai.kosjar@theqtcompany.com>2015-03-13 13:21:04 +0000
commit4e1d281963cd8002c812c05597a64219577b07f5 (patch)
tree9f92b673f2973000e1d560964d7cff031f34ee02 /src/libs/cplusplus/LookupContext.cpp
parent66c29ea8ec306768d9210df7e99142eb1cd616f5 (diff)
downloadqt-creator-4e1d281963cd8002c812c05597a64219577b07f5.tar.gz
C++: Fix crash on invalid function qualified name
Task-number: QTCREATORBUG-14135 Change-Id: I94e850f729bd3dbf4212960c7a980a1f118030b4 Reviewed-by: Orgad Shaneh <orgads@gmail.com>
Diffstat (limited to 'src/libs/cplusplus/LookupContext.cpp')
-rw-r--r--src/libs/cplusplus/LookupContext.cpp5
1 files changed, 4 insertions, 1 deletions
diff --git a/src/libs/cplusplus/LookupContext.cpp b/src/libs/cplusplus/LookupContext.cpp
index 35be29d6f2..56119f245b 100644
--- a/src/libs/cplusplus/LookupContext.cpp
+++ b/src/libs/cplusplus/LookupContext.cpp
@@ -1706,7 +1706,10 @@ bool CreateBindings::visit(Declaration *decl)
bool CreateBindings::visit(Function *function)
{
ClassOrNamespace *previous = _currentClassOrNamespace;
- _currentClassOrNamespace = lookupType(function, previous);
+ ClassOrNamespace *binding = lookupType(function, previous);
+ if (!binding)
+ return false;
+ _currentClassOrNamespace = binding;
for (unsigned i = 0, count = function->memberCount(); i < count; ++i) {
Symbol *s = function->memberAt(i);
if (Block *b = s->asBlock())