diff options
author | Erik Verbruggen <erik.verbruggen@nokia.com> | 2010-03-09 17:35:24 +0100 |
---|---|---|
committer | Erik Verbruggen <erik.verbruggen@nokia.com> | 2010-03-09 17:38:02 +0100 |
commit | 417a1c9f284fd4a8c66177eb9f2e65b36b910c15 (patch) | |
tree | d12f5686e4ef38ea4512296f2e91df8e03283160 /src/libs/cplusplus | |
parent | e35a1e612a8817b3393967d7aea9e86564c210cc (diff) | |
download | qt-creator-417a1c9f284fd4a8c66177eb9f2e65b36b910c15.tar.gz |
Fixed QTCREATORBUG-745.
Fixed crash in FindUsages on a dirty file in a large project, which is saved
while the FindUsages is still running.
Diffstat (limited to 'src/libs/cplusplus')
-rw-r--r-- | src/libs/cplusplus/FindUsages.cpp | 18 |
1 files changed, 4 insertions, 14 deletions
diff --git a/src/libs/cplusplus/FindUsages.cpp b/src/libs/cplusplus/FindUsages.cpp index 58c43ed721..a7554a14c1 100644 --- a/src/libs/cplusplus/FindUsages.cpp +++ b/src/libs/cplusplus/FindUsages.cpp @@ -465,24 +465,14 @@ bool FindUsages::visit(SimpleDeclarationAST *ast) bool FindUsages::visit(ObjCSelectorAST *ast) { -#if 1 - const Identifier *id = ast->name->identifier(); - if (id == _id) { - LookupContext context = currentContext(ast); - const QList<Symbol *> candidates = context.resolve(ast->name); - reportResult(ast->firstToken(), candidates); - } -#else - for (ObjCSelectorArgumentListAST *iter = ast->selector_argument_list; iter; - iter = iter->next) { - const Identifier *id = identifier(iter->value->name_token); + if (ast->name) { + const Identifier *id = ast->name->identifier(); if (id == _id) { - LookupContext context = currentContext(iter->value); + LookupContext context = currentContext(ast); const QList<Symbol *> candidates = context.resolve(ast->name); - reportResult(iter->value->name_token, candidates); + reportResult(ast->firstToken(), candidates); } } -#endif return false; } |