From 80c32be4b6b387becef7d073d15ac2c221e080fd Mon Sep 17 00:00:00 2001 From: Sergey Prigogin Date: Fri, 16 May 2014 11:10:53 -0700 Subject: [PATCH] Adjusted selection of the most representative index file variant for C/C++ editor. --- .../eclipse/cdt/internal/core/model/TranslationUnit.java | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/core/org.eclipse.cdt.core/model/org/eclipse/cdt/internal/core/model/TranslationUnit.java b/core/org.eclipse.cdt.core/model/org/eclipse/cdt/internal/core/model/TranslationUnit.java index d0a2a33118f..5c398e912c3 100644 --- a/core/org.eclipse.cdt.core/model/org/eclipse/cdt/internal/core/model/TranslationUnit.java +++ b/core/org.eclipse.cdt.core/model/org/eclipse/cdt/internal/core/model/TranslationUnit.java @@ -915,8 +915,13 @@ public class TranslationUnit extends Openable implements ITranslationUnit { for (IIndexFile indexFile : index.getFiles(linkageID, ifl)) { int score= indexFile.getMacros().length * 2; IIndexFile context= getParsedInContext(indexFile); - if (isSourceFile(context, getCProject().getProject())) + if (isSourceFile(context, getCProject().getProject())) { + if (indexFile.equals(context)) { + // The file is an independently indexed source - return it. + return new IIndexFile[] { indexFile, indexFile }; + } score++; + } if (score > bestScore) { bestScore= score; best= indexFile;