diff --git a/src/Main/Base/Project/Src/Gui/Dialogs/SolutionConfiguration/EditAvailableConfigurationsDialog.cs b/src/Main/Base/Project/Src/Gui/Dialogs/SolutionConfiguration/EditAvailableConfigurationsDialog.cs index 36973dc833..6bc98452b3 100644 --- a/src/Main/Base/Project/Src/Gui/Dialogs/SolutionConfiguration/EditAvailableConfigurationsDialog.cs +++ b/src/Main/Base/Project/Src/Gui/Dialogs/SolutionConfiguration/EditAvailableConfigurationsDialog.cs @@ -220,7 +220,7 @@ namespace ICSharpCode.SharpDevelop.Gui IProjectAllowChangeConfigurations pacc = project as IProjectAllowChangeConfigurations; if (pacc != null) { if (editPlatforms) { - pacc.AddProjectPlatform(newName, dlg.CopyFrom); + pacc.AddProjectPlatform(MSBuildInternals.FixPlatformNameForProject(newName), dlg.CopyFrom); } else { pacc.AddProjectConfiguration(newName, dlg.CopyFrom); } diff --git a/src/Main/Base/Project/Src/Project/Solution/Solution.cs b/src/Main/Base/Project/Src/Project/Solution/Solution.cs index 6e397913d1..9963e3b8c9 100644 --- a/src/Main/Base/Project/Src/Project/Solution/Solution.cs +++ b/src/Main/Base/Project/Src/Project/Solution/Solution.cs @@ -359,11 +359,14 @@ namespace ICSharpCode.SharpDevelop.Project SaveProjectSections(folder.Sections, projectSection); - ISolutionFolder subFolder; + // Push the sub folders in reverse order so that we pop them + // in the correct order. for (int i = folder.Folders.Count - 1; i >= 0; i--) { - //foreach (ISolutionFolder subFolder in folder.Folders) { - subFolder = folder.Folders[i]; - stack.Push(subFolder); + stack.Push(folder.Folders[i]); + } + // But use normal order for printing the nested projects section + for (int i = 0; i < folder.Folders.Count; i++) { + ISolutionFolder subFolder = folder.Folders[i]; nestedProjectsSection.Append("\t\t"); nestedProjectsSection.Append(subFolder.IdGuid); nestedProjectsSection.Append(" = "); @@ -1191,6 +1194,7 @@ namespace ICSharpCode.SharpDevelop.Project #region System.IDisposable interface implementation public void Dispose() { + changeWatcher.Dispose(); foreach (IProject project in Projects) { project.Dispose(); }