From 8a03f8ccccc83898424203e8879bcb9087fcb187 Mon Sep 17 00:00:00 2001 From: Vladimir Krivosheev Date: Tue, 20 Sep 2016 13:02:41 +0200 Subject: [PATCH] =?UTF-8?q?NonProjectFileWritingAccessProvider=20=E2=80=94?= =?UTF-8?q?=20do=20not=20use=20Project.DIRECTORY=5FSTORE=5FFOLDER?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../configuration-store-impl/src/ProjectStoreImpl.kt | 2 +- .../impl/NonProjectFileWritingAccessProvider.java | 12 +++--------- 2 files changed, 4 insertions(+), 10 deletions(-) diff --git a/platform/configuration-store-impl/src/ProjectStoreImpl.kt b/platform/configuration-store-impl/src/ProjectStoreImpl.kt index 4703822e4fd2..9ebfeb1b1991 100644 --- a/platform/configuration-store-impl/src/ProjectStoreImpl.kt +++ b/platform/configuration-store-impl/src/ProjectStoreImpl.kt @@ -226,7 +226,7 @@ abstract class ProjectStoreBase(override final val project: ProjectImpl) : Compo val filePath = file.path if (!isDirectoryBased) { - return filePath == projectFilePath + return filePath == projectFilePath || filePath == workspaceFilePath } return FileUtil.isAncestor(PathUtilRt.getParentPath(projectFilePath), filePath, false) } diff --git a/platform/platform-impl/src/com/intellij/openapi/fileEditor/impl/NonProjectFileWritingAccessProvider.java b/platform/platform-impl/src/com/intellij/openapi/fileEditor/impl/NonProjectFileWritingAccessProvider.java index db430507edfd..89db50535e5f 100644 --- a/platform/platform-impl/src/com/intellij/openapi/fileEditor/impl/NonProjectFileWritingAccessProvider.java +++ b/platform/platform-impl/src/com/intellij/openapi/fileEditor/impl/NonProjectFileWritingAccessProvider.java @@ -150,17 +150,11 @@ public class NonProjectFileWritingAccessProvider extends WritingAccessProvider { if (!Registry.is("ide.hide.excluded.files") && fileIndex.isExcluded(file) && !fileIndex.isUnderIgnored(file)) return true; if (project instanceof ProjectEx && !project.isDefault()) { - if (ProjectKt.isDirectoryBased(project)) { - VirtualFile baseDir = project.getBaseDir(); - VirtualFile dotIdea = baseDir == null ? null : baseDir.findChild(Project.DIRECTORY_STORE_FOLDER); - if (dotIdea != null && VfsUtilCore.isAncestor(dotIdea, file, false)) return true; - } - - IProjectStore store = ProjectKt.getStateStore(project); - String filePath = file.getPath(); - if (FileUtil.namesEqual(filePath, store.getWorkspaceFilePath()) || FileUtil.namesEqual(filePath, store.getProjectFilePath())) { + if (ProjectKt.getStateStore(project).isProjectFile(file)) { return true; } + + String filePath = file.getPath(); for (Module module : ModuleManager.getInstance(project).getModules()) { if (FileUtil.namesEqual(filePath, module.getModuleFilePath())) { return true;