From be1435ad0aa79768bb03030a333084bed1ea2929 Mon Sep 17 00:00:00 2001 From: Andrew Gvozdev Date: Mon, 8 Aug 2011 15:19:16 -0400 Subject: [PATCH] bug 353831: LanguageManager.getLanguageForFile(IFile...) cannot handle EFS resources --- .../org/eclipse/cdt/core/model/LanguageManager.java | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 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 c6acb69f186..6f0b6dea97f 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 @@ -19,8 +19,8 @@ import java.util.HashSet; import java.util.Iterator; import java.util.List; import java.util.Map; -import java.util.Set; import java.util.Map.Entry; +import java.util.Set; import org.eclipse.cdt.core.CCorePlugin; import org.eclipse.cdt.core.dom.ILinkage; @@ -573,7 +573,14 @@ public class LanguageManager { IProject project = file.getProject(); if (contentTypeId == null) { - IContentType contentType= CContentTypes.getContentType(project, file.getLocation().toString()); + IPath location = file.getLocation(); + String filename; + if (location != null) { + filename = location.toString(); + } else { + filename = file.getName(); + } + IContentType contentType= CContentTypes.getContentType(project, filename); if (contentType == null) { return null; }