diff --git a/Code/Mantid/MantidPlot/src/ScriptFileInterpreter.cpp b/Code/Mantid/MantidPlot/src/ScriptFileInterpreter.cpp index bd3b9d71b9ac..f1b97402e7af 100644 --- a/Code/Mantid/MantidPlot/src/ScriptFileInterpreter.cpp +++ b/Code/Mantid/MantidPlot/src/ScriptFileInterpreter.cpp @@ -50,15 +50,24 @@ void ScriptFileInterpreter::prepareToClose() QPushButton *saveAsButton = msgBox.addButton("Save As...", QMessageBox::AcceptRole); msgBox.addButton(QMessageBox::Discard); int ret = msgBox.exec(); - if( msgBox.clickedButton() == saveAsButton ) - { - m_editor->saveAs(); - } - else if( ret == QMessageBox::Save ) + + try { - m_editor->saveToCurrentFile(); + if( msgBox.clickedButton() == saveAsButton ) + { + m_editor->saveAs();saveAs + } + else if( ret == QMessageBox::Save ) + { + m_editor->saveToCurrentFile(); + } + else + { + m_editor->setModified(false); + } } - else + //Catch cancelling save dialogue + catch( ScriptEditor::SaveCancelledException sce ) { m_editor->setModified(false); }