diff --git a/src/Main/Base/Project/Src/Gui/Workbench/Layouts/SdiWorkspaceWindow.cs b/src/Main/Base/Project/Src/Gui/Workbench/Layouts/SdiWorkspaceWindow.cs index fafc72ba6d..4d368473ba 100644 --- a/src/Main/Base/Project/Src/Gui/Workbench/Layouts/SdiWorkspaceWindow.cs +++ b/src/Main/Base/Project/Src/Gui/Workbench/Layouts/SdiWorkspaceWindow.cs @@ -346,16 +346,11 @@ namespace ICSharpCode.SharpDevelop.Gui switch (dr) { case DialogResult.Yes: foreach (IViewContent vc in this.ViewContents) { - if (!vc.IsDirty) continue; - if (vc.PrimaryFile != null) { - while (true) { - vc.Files.ForEach(ICSharpCode.SharpDevelop.Commands.SaveFile.Save); - if (vc.IsDirty) { - if (MessageService.AskQuestion("${res:MainWindow.DiscardChangesMessage}")) { - fileDiscarded = true; - break; - } - } else { + while (vc.IsDirty) { + ICSharpCode.SharpDevelop.Commands.SaveFile.Save(vc); + if (vc.IsDirty) { + if (MessageService.AskQuestion("${res:MainWindow.DiscardChangesMessage}")) { + fileDiscarded = true; break; } }