summaryrefslogtreecommitdiff
path: root/platform
diff options
context:
space:
mode:
authorRustam Vishnyakov <rustam.vishnyakov@jetbrains.com>2014-02-27 15:49:14 +0400
committerTor Norbye <tnorbye@google.com>2014-03-10 15:49:25 +0000
commitd153c97a9543353f1a6d76a8810a7519832e9521 (patch)
treee12dae0992f02d6f12148e1256d4fa83de959a54 /platform
parent5bea5cf38cc7b45b17811726cf26a1b60a68ebaa (diff)
downloadidea-d153c97a9543353f1a6d76a8810a7519832e9521.tar.gz
Fix for IDEA-121307 Cannot create new file (StubVirtualFile throws an exception on isDirectory)
Change-Id: I7557101cf2511762190e5f611715fd76e8a82026 (cherry picked from commit 905c6350e888555b3afde0a84d326e07069a7944)
Diffstat (limited to 'platform')
-rw-r--r--platform/lang-impl/src/com/intellij/openapi/file/exclude/EnforcedPlainTextFileTypeManager.java5
-rw-r--r--platform/lang-impl/src/com/intellij/openapi/file/exclude/PersistentFileSetManager.java3
2 files changed, 5 insertions, 3 deletions
diff --git a/platform/lang-impl/src/com/intellij/openapi/file/exclude/EnforcedPlainTextFileTypeManager.java b/platform/lang-impl/src/com/intellij/openapi/file/exclude/EnforcedPlainTextFileTypeManager.java
index 420ed2931d64..830681b9ba5e 100644
--- a/platform/lang-impl/src/com/intellij/openapi/file/exclude/EnforcedPlainTextFileTypeManager.java
+++ b/platform/lang-impl/src/com/intellij/openapi/file/exclude/EnforcedPlainTextFileTypeManager.java
@@ -28,6 +28,7 @@ import com.intellij.openapi.roots.ex.ProjectRootManagerEx;
import com.intellij.openapi.util.EmptyRunnable;
import com.intellij.openapi.util.Ref;
import com.intellij.openapi.vfs.VirtualFile;
+import com.intellij.openapi.vfs.newvfs.impl.StubVirtualFile;
import com.intellij.util.containers.ConcurrentHashMap;
import com.intellij.util.indexing.FileBasedIndex;
import org.jetbrains.annotations.NotNull;
@@ -51,7 +52,7 @@ public class EnforcedPlainTextFileTypeManager implements ProjectManagerListener
}
public boolean isMarkedAsPlainText(VirtualFile file) {
- if (file.isDirectory()) return false;
+ if (file instanceof StubVirtualFile || file.isDirectory()) return false;
synchronized (mySetsInitialized) {
if (!mySetsInitialized.get()) {
initPlainTextFileSets();
@@ -73,7 +74,7 @@ public class EnforcedPlainTextFileTypeManager implements ProjectManagerListener
}
public static boolean isApplicableFor(@NotNull VirtualFile file) {
- if (file.isDirectory()) return false;
+ if (file instanceof StubVirtualFile || file.isDirectory()) return false;
FileType originalType = FileTypeManager.getInstance().getFileTypeByFileName(file.getName());
return !originalType.isBinary() && originalType != FileTypes.PLAIN_TEXT && originalType != StdFileTypes.JAVA;
}
diff --git a/platform/lang-impl/src/com/intellij/openapi/file/exclude/PersistentFileSetManager.java b/platform/lang-impl/src/com/intellij/openapi/file/exclude/PersistentFileSetManager.java
index aab5c78defb8..6cf91fe5a0c0 100644
--- a/platform/lang-impl/src/com/intellij/openapi/file/exclude/PersistentFileSetManager.java
+++ b/platform/lang-impl/src/com/intellij/openapi/file/exclude/PersistentFileSetManager.java
@@ -19,6 +19,7 @@ import com.intellij.openapi.components.PersistentStateComponent;
import com.intellij.openapi.vfs.VfsUtilCore;
import com.intellij.openapi.vfs.VirtualFile;
import com.intellij.openapi.vfs.VirtualFileManager;
+import com.intellij.openapi.vfs.newvfs.impl.StubVirtualFile;
import com.intellij.util.containers.HashSet;
import org.jdom.Attribute;
import org.jdom.Element;
@@ -36,7 +37,7 @@ public class PersistentFileSetManager implements PersistentStateComponent<Elemen
private final Set<VirtualFile> myFiles = new HashSet<VirtualFile>();
protected boolean addFile(VirtualFile file) {
- if (file.isDirectory()) return false;
+ if (file instanceof StubVirtualFile || file.isDirectory()) return false;
myFiles.add(file);
return true;
}