Compare localized path against editor scene path when reloading and

loading
This commit is contained in:
Adam Johnston
2024-11-26 20:34:15 -08:00
parent 0f95e9f8e6
commit 224bafcbce

View File

@ -3960,7 +3960,7 @@ Error EditorNode::load_scene(const String &p_scene, bool p_ignore_broken_deps, b
return OK; return OK;
} }
String lpath = ResourceUID::ensure_path(p_scene); String lpath = ProjectSettings::get_singleton()->localize_path(ResourceUID::ensure_path(p_scene));
if (!p_set_inherited) { if (!p_set_inherited) {
for (int i = 0; i < editor_data.get_edited_scene_count(); i++) { for (int i = 0; i < editor_data.get_edited_scene_count(); i++) {
if (editor_data.get_scene_path(i) == lpath) { if (editor_data.get_scene_path(i) == lpath) {
@ -3978,7 +3978,6 @@ Error EditorNode::load_scene(const String &p_scene, bool p_ignore_broken_deps, b
} }
} }
lpath = ProjectSettings::get_singleton()->localize_path(lpath);
if (!lpath.begins_with("res://")) { if (!lpath.begins_with("res://")) {
show_accept(TTR("Error loading scene, it must be inside the project path. Use 'Import' to open the scene, then save it inside the project path."), TTR("OK")); show_accept(TTR("Error loading scene, it must be inside the project path. Use 'Import' to open the scene, then save it inside the project path."), TTR("OK"));
opening_prev = false; opening_prev = false;
@ -5925,8 +5924,11 @@ void EditorNode::_notify_nodes_scene_reimported(Node *p_node, Array p_reimported
void EditorNode::reload_scene(const String &p_path) { void EditorNode::reload_scene(const String &p_path) {
int scene_idx = -1; int scene_idx = -1;
String lpath = ProjectSettings::get_singleton()->localize_path(p_path);
for (int i = 0; i < editor_data.get_edited_scene_count(); i++) { for (int i = 0; i < editor_data.get_edited_scene_count(); i++) {
if (editor_data.get_scene_path(i) == p_path) { if (editor_data.get_scene_path(i) == lpath) {
scene_idx = i; scene_idx = i;
break; break;
} }