From 303f61d09392ceccf1b61fb86d3eb36d7bdfab3c Mon Sep 17 00:00:00 2001 From: Vladimir Krivosheev Date: Wed, 30 Nov 2016 12:27:28 +0100 Subject: [PATCH] =?UTF-8?q?WI-33637=20Attach=20to=20the=20current=20projec?= =?UTF-8?q?t=20asks=20additional=20question=20=E2=80=94=20dotIdeaDir?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/intellij/platform/ModuleAttachProcessor.kt | 13 ++++++------- 1 file changed, 6 insertions(+), 7 deletions(-) diff --git a/platform/lang-impl/src/com/intellij/platform/ModuleAttachProcessor.kt b/platform/lang-impl/src/com/intellij/platform/ModuleAttachProcessor.kt index 004d03a29722..074380b4232f 100644 --- a/platform/lang-impl/src/com/intellij/platform/ModuleAttachProcessor.kt +++ b/platform/lang-impl/src/com/intellij/platform/ModuleAttachProcessor.kt @@ -114,19 +114,18 @@ class ModuleAttachProcessor : ProjectAttachProcessor() { } override fun attachToProject(project: Project, projectDir: Path, callback: ProjectOpenedCallback?): Boolean { - if (!projectDir.exists()) { - val projectDirParent = projectDir.parent!! - val newProject = ProjectManagerEx.getInstanceEx().newProject(projectDirParent.fileName.toString(), projectDirParent.toString(), true, false) ?: return false - - val baseDir = LocalFileSystem.getInstance().refreshAndFindFileByPath(projectDirParent.systemIndependentPath) + val dotIdeaDir = projectDir.resolve(Project.DIRECTORY_STORE_FOLDER) + if (!dotIdeaDir.exists()) { + val newProject = ProjectManagerEx.getInstanceEx().newProject(projectDir.fileName.toString(), projectDir.toString(), true, false) ?: return false + val baseDir = LocalFileSystem.getInstance().refreshAndFindFileByPath(projectDir.systemIndependentPath) PlatformProjectOpenProcessor.runDirectoryProjectConfigurators(baseDir, newProject) newProject.save() runWriteAction { Disposer.dispose(newProject) } } - var isAttached = findMainModule(project, projectDir, callback) + var isAttached = findMainModule(project, dotIdeaDir, callback) if (!isAttached) { - isAttached = findMainModule(project, projectDir.resolve(Project.DIRECTORY_STORE_FOLDER), callback) + isAttached = findMainModule(project, projectDir, callback) } if (isAttached) { return true