summaryrefslogtreecommitdiff
path: root/src/libs/cplusplus
diff options
context:
space:
mode:
authorErik Verbruggen <erik.verbruggen@nokia.com>2010-03-09 17:35:24 +0100
committerErik Verbruggen <erik.verbruggen@nokia.com>2010-03-09 17:38:02 +0100
commit417a1c9f284fd4a8c66177eb9f2e65b36b910c15 (patch)
treed12f5686e4ef38ea4512296f2e91df8e03283160 /src/libs/cplusplus
parente35a1e612a8817b3393967d7aea9e86564c210cc (diff)
downloadqt-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.cpp18
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;
}