From 931436dbb10c3c9ab04c615545c006ed99e31e2a Mon Sep 17 00:00:00 2001 From: Daniel Grunwald Date: Mon, 15 Nov 2010 13:40:01 +0100 Subject: [PATCH] Fix SD-1703 - Deleted and removed projects remain in the solution --- .../Project/Src/Project/Solution/Solution.cs | 16 +++------------- .../Services/ProjectService/ProjectService.cs | 8 +++++--- 2 files changed, 8 insertions(+), 16 deletions(-) diff --git a/src/Main/Base/Project/Src/Project/Solution/Solution.cs b/src/Main/Base/Project/Src/Project/Solution/Solution.cs index 6f767f2baf..caca958b4b 100644 --- a/src/Main/Base/Project/Src/Project/Solution/Solution.cs +++ b/src/Main/Base/Project/Src/Project/Solution/Solution.cs @@ -452,8 +452,6 @@ namespace ICSharpCode.SharpDevelop.Project { ProjectSection nestedProjectsSection = null; - bool needsConversion = false; - // read solution files using system encoding, but detect UTF8 if BOM is present using (StreamReader sr = new StreamReader(newSolution.FileName, Encoding.Default, true)) { string line = GetFirstNonCommentLine(sr); @@ -465,17 +463,9 @@ namespace ICSharpCode.SharpDevelop.Project switch (match.Result("${Version}")) { case "7.00": - needsConversion = true; - if (!MessageService.AskQuestion("${res:SharpDevelop.Solution.ConvertSolutionVersion7}")) { - return false; - } - break; case "8.00": - needsConversion = true; - if (!MessageService.AskQuestion("${res:SharpDevelop.Solution.ConvertSolutionVersion8}")) { - return false; - } - break; + MessageService.ShowError("${res:SharpDevelop.Solution.CannotLoadOldSolution}"); + return false; case "9.00": case "10.00": case "11.00": @@ -503,7 +493,7 @@ namespace ICSharpCode.SharpDevelop.Project } } - if (!newSolution.ReadOnly && (newSolution.FixSolutionConfiguration(newSolution.Projects) || needsConversion)) { + if (!newSolution.ReadOnly && (newSolution.FixSolutionConfiguration(newSolution.Projects))) { // save in new format newSolution.Save(); } diff --git a/src/Main/Base/Project/Src/Services/ProjectService/ProjectService.cs b/src/Main/Base/Project/Src/Services/ProjectService/ProjectService.cs index 0ce5bf63d0..dd3790f82f 100644 --- a/src/Main/Base/Project/Src/Services/ProjectService/ProjectService.cs +++ b/src/Main/Base/Project/Src/Services/ProjectService/ProjectService.cs @@ -624,9 +624,11 @@ namespace ICSharpCode.SharpDevelop.Project static void HandleRemovedSolutionFolder(ISolutionFolder folder) { - if (folder is IProject) { - OpenSolution.RemoveProjectConfigurations(folder.IdGuid); - ParserService.RemoveProjectContentForRemovedProject((IProject)folder); + IProject project = folder as IProject; + if (project != null) { + OpenSolution.RemoveProjectConfigurations(project.IdGuid); + ParserService.RemoveProjectContentForRemovedProject(project); + project.Dispose(); } if (folder is ISolutionFolderContainer) { // recurse into child folders that were also removed