summaryrefslogtreecommitdiff
path: root/tools/editor
diff options
context:
space:
mode:
authorRémi Verschelde <remi@verschelde.fr>2016-05-03 07:33:11 +0200
committerRémi Verschelde <remi@verschelde.fr>2016-05-03 07:33:11 +0200
commit4e23ba5f37e21021c47e3aecf544afc9485e311b (patch)
treee33b0d038c79b04b2245a7fa5527a4706443b6eb /tools/editor
parent564ba76becab1819bcde1265d4f119e04a6b76ee (diff)
parent107e62be7045ae69415f8069a6f49ec912ec3799 (diff)
Merge pull request #4523 from neikeq/pr-issue-4504
Fix checking unsaved changes only in current scene
Diffstat (limited to 'tools/editor')
-rw-r--r--tools/editor/editor_node.cpp6
1 files changed, 5 insertions, 1 deletions
diff --git a/tools/editor/editor_node.cpp b/tools/editor/editor_node.cpp
index 09f85b99f6..f7608a6b9d 100644
--- a/tools/editor/editor_node.cpp
+++ b/tools/editor/editor_node.cpp
@@ -4668,7 +4668,11 @@ void EditorNode::_scene_tab_script_edited(int p_tab) {
void EditorNode::_scene_tab_closed(int p_tab) {
current_option = SCENE_TAB_CLOSE;
tab_closing = p_tab;
- if (unsaved_cache) {
+
+ bool unsaved = (p_tab==editor_data.get_edited_scene()) ?
+ saved_version!=editor_data.get_undo_redo().get_version() :
+ editor_data.get_scene_version(p_tab)!=0;
+ if (unsaved) {
confirmation->get_ok()->set_text("Yes");
//confirmation->get_cancel()->show();
confirmation->set_text("Close scene? (Unsaved changes will be lost)");