From 21443abb26ba436a4f1d185eb1c86376a4283344 Mon Sep 17 00:00:00 2001 From: Markus Schorn Date: Wed, 12 Jul 2006 06:42:33 +0000 Subject: [PATCH] Fix for 132201, prefer content types with a case-sensitive match. --- .../model/org/eclipse/cdt/core/model/LanguageManager.java | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/core/org.eclipse.cdt.core/model/org/eclipse/cdt/core/model/LanguageManager.java b/core/org.eclipse.cdt.core/model/org/eclipse/cdt/core/model/LanguageManager.java index 94510a6e741..43b6572d004 100644 --- a/core/org.eclipse.cdt.core/model/org/eclipse/cdt/core/model/LanguageManager.java +++ b/core/org.eclipse.cdt.core/model/org/eclipse/cdt/core/model/LanguageManager.java @@ -47,6 +47,7 @@ public class LanguageManager { ILanguage language = (ILanguage)cache.get(id); if (language != null) return language; + IExtensionPoint point = Platform.getExtensionRegistry().getExtensionPoint(CCorePlugin.PLUGIN_ID, ILanguage.KEY); IExtension[] extensions = point.getExtensions(); for (int i = 0; i < extensions.length; ++i) { @@ -67,15 +68,16 @@ public class LanguageManager { } public ILanguage getLanguage(IContentType contentType) throws CoreException { + String contentTypeId= contentType.getId(); IExtensionPoint point = Platform.getExtensionRegistry().getExtensionPoint(CCorePlugin.PLUGIN_ID, ILanguage.KEY); IExtension[] extensions = point.getExtensions(); for (int i = 0; i < extensions.length; ++i) { IConfigurationElement[] languages = extensions[i].getConfigurationElements(); for (int j = 0; j < languages.length; ++j) { IConfigurationElement language = languages[j]; - IConfigurationElement[] contentTypes = language.getChildren("contentType"); //$NON-NLS-1$ - for (int k = 0; k < contentTypes.length; ++k) { - if (contentType.equals(contentType.getId())) { + IConfigurationElement[] assocContentTypes = language.getChildren("contentType"); //$NON-NLS-1$ + for (int k = 0; k < assocContentTypes.length; ++k) { + if (contentTypeId.equals(assocContentTypes[i].getAttribute("id"))) { //$NON-NLS-1$ return (ILanguage)language.createExecutableExtension("class"); //$NON-NLS-1$ } }