Skip to main content
summaryrefslogtreecommitdiffstats
path: root/core
diff options
context:
space:
mode:
authorMarkus Schorn2013-08-26 11:55:38 +0000
committerMarkus Schorn2013-08-26 12:36:02 +0000
commitd7faff7538a313c5d3090ad5b0a485869d4d5036 (patch)
tree8e65e6bdc880dc42547a4e4248eb0de08197835f /core
parentb131e456e41123684514525489be906773d172d7 (diff)
downloadorg.eclipse.cdt-d7faff7538a313c5d3090ad5b0a485869d4d5036.tar.gz
org.eclipse.cdt-d7faff7538a313c5d3090ad5b0a485869d4d5036.tar.xz
org.eclipse.cdt-d7faff7538a313c5d3090ad5b0a485869d4d5036.zip
Bug 411605: Fix for regression in resource lookup.
Diffstat (limited to 'core')
-rw-r--r--core/org.eclipse.cdt.core/src/org/eclipse/cdt/internal/core/resources/ResourceLookup.java17
1 files changed, 10 insertions, 7 deletions
diff --git a/core/org.eclipse.cdt.core/src/org/eclipse/cdt/internal/core/resources/ResourceLookup.java b/core/org.eclipse.cdt.core/src/org/eclipse/cdt/internal/core/resources/ResourceLookup.java
index 3cea6a25454..6598ae9b5bf 100644
--- a/core/org.eclipse.cdt.core/src/org/eclipse/cdt/internal/core/resources/ResourceLookup.java
+++ b/core/org.eclipse.cdt.core/src/org/eclipse/cdt/internal/core/resources/ResourceLookup.java
@@ -115,22 +115,25 @@ public class ResourceLookup {
* reaching the next for-loop - that loop is expensive as it might cause the loading of unnecessary
* project-descriptions.
*/
- if(preferredProject != null) {
- for (int i = 0; i < files.length; i++) {
- IFile file = files[i];
- if (file.getProject().equals(preferredProject) && file.isAccessible() &&
- (best == null || best.getFullPath().toString().compareTo(file.getFullPath().toString()) > 0)) {
+ if (preferredProject != null) {
+ for (IFile file : files) {
+ if (file.getProject().equals(preferredProject) && file.isAccessible()) {
+ if (best != null) {
+ // At least two accessible files in preferred project.
+ best = null;
+ break;
+ }
best= file;
}
}
}
+ // One accessible file in preferred project.
if(best != null)
return best;
int bestRelevance= -1;
- for (int i = 0; i < files.length; i++) {
- IFile file = files[i];
+ for (IFile file : files) {
int relevance= FileRelevance.getRelevance(file, preferredProject);
if (best == null || relevance > bestRelevance ||
(relevance == bestRelevance &&

Back to the top