CppEditor: Reduce calls to recalculateSemanticInfo()

Case: Opening a file that is not yet in the Snapshot

recalculateSemanticInfoNow() emitted the same SemanticInfo until the
indexer processed the document (Snapshot::contains()). That signal
caused CppEditorWidget::updateSemanticInfo() to call
semanticRehighlight() because of unequal revisions. That triggered
recalculateSemanticInfo() again.

Change-Id: I8fb7d7c42aad3d6a89876e743cd4e3c7aff643bf
Reviewed-by: Erik Verbruggen <erik.verbruggen@digia.com>
This commit is contained in:
Nikolai Kosjar
2013-05-03 16:04:56 +02:00
parent ed4b202774
commit 7313203c29

View File

@@ -422,6 +422,8 @@ void CppEditorSupport::recalculateSemanticInfoNow(const SemanticInfo::Source &so
doc->control()->setTopLevelDeclarationProcessor(processor);
doc->check();
semanticInfo.doc = doc;
} else {
return;
}
}