diff --git a/platform/platform-impl/src/com/intellij/ide/impl/ProjectUtil.java b/platform/platform-impl/src/com/intellij/ide/impl/ProjectUtil.java index f77c253fa5c5..65eaa3611e1a 100644 --- a/platform/platform-impl/src/com/intellij/ide/impl/ProjectUtil.java +++ b/platform/platform-impl/src/com/intellij/ide/impl/ProjectUtil.java @@ -287,7 +287,7 @@ public class ProjectUtil { return false; } - final File projectFile = new File(projectFilePath); + File projectFile = new File(projectFilePath); if (projectFile.isDirectory()) { return FileUtil.pathsEqual(projectFilePath, existingBaseDirPath); } @@ -298,9 +298,10 @@ public class ProjectUtil { File parent = projectFile.getParentFile(); if (parent.getName().equals(Project.DIRECTORY_STORE_FOLDER)) { + projectFile = parent; parent = parent.getParentFile(); } - return parent != null && FileUtil.pathsEqual(parent.getPath(), existingBaseDirPath); + return parent != null && FileUtil.pathsEqual(parent.getPath(), existingBaseDirPath) && projectFile.getName().equals(Project.DIRECTORY_STORE_FOLDER); } public static void focusProjectWindow(final Project p, boolean executeIfAppInactive) { diff --git a/platform/platform-tests/testSrc/com/intellij/openapi/project/impl/ProjectOpeningTest.java b/platform/platform-tests/testSrc/com/intellij/openapi/project/impl/ProjectOpeningTest.java index da55e9d37075..90aa6bc185dc 100644 --- a/platform/platform-tests/testSrc/com/intellij/openapi/project/impl/ProjectOpeningTest.java +++ b/platform/platform-tests/testSrc/com/intellij/openapi/project/impl/ProjectOpeningTest.java @@ -93,7 +93,7 @@ public class ProjectOpeningTest extends PlatformTestCase { assertTrue(ProjectUtil.isSameProject(projectDir.getAbsolutePath(), dirBasedProject)); assertFalse(ProjectUtil.isSameProject(createTempDir("project2").getAbsolutePath(), dirBasedProject)); File iprFilePath = new File(projectDir, "project.ipr"); - assertTrue(ProjectUtil.isSameProject(iprFilePath.getAbsolutePath(), dirBasedProject)); + assertFalse(ProjectUtil.isSameProject(iprFilePath.getAbsolutePath(), dirBasedProject)); File miscXmlFilePath = new File(projectDir, ".idea/misc.xml"); assertTrue(ProjectUtil.isSameProject(miscXmlFilePath.getAbsolutePath(), dirBasedProject)); }