From 314dac441b4cb61f55e6e6c224b15d09c506af0a Mon Sep 17 00:00:00 2001 From: Saracen Date: Mon, 9 Oct 2023 03:15:46 +0100 Subject: [PATCH] Fix dependency menu not showing up if scene failed to load. (cherry picked from commit c0e872c05b211e8f258785f33f03f43c17d62fa8) --- editor/editor_node.cpp | 21 +++++++++++---------- 1 file changed, 11 insertions(+), 10 deletions(-) diff --git a/editor/editor_node.cpp b/editor/editor_node.cpp index fe9ea15cf78..17ae863a6f6 100644 --- a/editor/editor_node.cpp +++ b/editor/editor_node.cpp @@ -3674,16 +3674,6 @@ Error EditorNode::load_scene(const String &p_scene, bool p_ignore_broken_deps, b Error err; Ref sdata = ResourceLoader::load(lpath, "", ResourceFormatLoader::CACHE_MODE_REPLACE, &err); - if (!sdata.is_valid()) { - _dialog_display_load_error(lpath, err); - opening_prev = false; - - if (prev != -1) { - set_current_scene(prev); - editor_data.remove_scene(idx); - } - return ERR_FILE_NOT_FOUND; - } if (!p_ignore_broken_deps && dependency_errors.has(lpath)) { current_menu_option = -1; @@ -3701,6 +3691,17 @@ Error EditorNode::load_scene(const String &p_scene, bool p_ignore_broken_deps, b return ERR_FILE_MISSING_DEPENDENCIES; } + if (!sdata.is_valid()) { + _dialog_display_load_error(lpath, err); + opening_prev = false; + + if (prev != -1) { + set_current_scene(prev); + editor_data.remove_scene(idx); + } + return ERR_FILE_NOT_FOUND; + } + dependency_errors.erase(lpath); // At least not self path. for (KeyValue> &E : dependency_errors) {