Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/mono/monodevelop.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--main/src/core/MonoDevelop.Core/MonoDevelop.Projects/Project.cs6
-rw-r--r--main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.Gui.Pads.ProjectPad/ProjectFolderNodeBuilder.cs3
-rw-r--r--main/tests/MonoDevelop.Core.Tests/MonoDevelop.Projects/ProjectTests.cs10
3 files changed, 17 insertions, 2 deletions
diff --git a/main/src/core/MonoDevelop.Core/MonoDevelop.Projects/Project.cs b/main/src/core/MonoDevelop.Core/MonoDevelop.Projects/Project.cs
index ebb1a3215e..c415bbc86c 100644
--- a/main/src/core/MonoDevelop.Core/MonoDevelop.Projects/Project.cs
+++ b/main/src/core/MonoDevelop.Core/MonoDevelop.Projects/Project.cs
@@ -4757,6 +4757,12 @@ namespace MonoDevelop.Projects
}
}
+ public bool PathExistsInProject (FilePath path)
+ {
+ string basePath = path.ToRelative (BaseDirectory);
+ return files.GetFile(path) != null || files.GetFilesInVirtualPath (basePath).Any ();
+ }
+
public event EventHandler<ProjectItemEventArgs> ProjectItemAdded;
public event EventHandler<ProjectItemEventArgs> ProjectItemRemoved;
diff --git a/main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.Gui.Pads.ProjectPad/ProjectFolderNodeBuilder.cs b/main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.Gui.Pads.ProjectPad/ProjectFolderNodeBuilder.cs
index a4d7493962..6f1406df4a 100644
--- a/main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.Gui.Pads.ProjectPad/ProjectFolderNodeBuilder.cs
+++ b/main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.Gui.Pads.ProjectPad/ProjectFolderNodeBuilder.cs
@@ -383,8 +383,7 @@ namespace MonoDevelop.Ide.Gui.Pads.ProjectPad
internal static bool PathExistsInProject (Project project, FilePath path)
{
- string basePath = path.ToRelative (project.BaseDirectory);
- return project.Files.GetFile (path) != null || project.Files.GetFilesInVirtualPath (basePath).Any ();
+ return project.PathExistsInProject (path);
}
internal static bool ContainsDirectorySeparator (string name)
diff --git a/main/tests/MonoDevelop.Core.Tests/MonoDevelop.Projects/ProjectTests.cs b/main/tests/MonoDevelop.Core.Tests/MonoDevelop.Projects/ProjectTests.cs
index 36a177441f..316f241060 100644
--- a/main/tests/MonoDevelop.Core.Tests/MonoDevelop.Projects/ProjectTests.cs
+++ b/main/tests/MonoDevelop.Core.Tests/MonoDevelop.Projects/ProjectTests.cs
@@ -1275,6 +1275,16 @@ namespace MonoDevelop.Projects
}
}
+ [Test]
+ public void EmptyFolderExistsInProject()
+ {
+ // Test case for bug #970095
+ var p = Services.ProjectService.CreateProject ("C#");
+ p.AddDirectory ("Model");
+ Assert.True(p.PathExistsInProject ("Model"));
+ p.Dispose ();
+ }
+
class TestGetReferencesProjectExtension : DotNetProjectExtension
{
protected internal override Task<List<AssemblyReference>> OnGetReferences (ConfigurationSelector configuration, CancellationToken token)