Merge pull request #28351 from Paulb23/fix_state_crash
Fix crash when restoring script editor state
This commit is contained in:
commit
80f91c9d36
1 changed files with 10 additions and 4 deletions
|
@ -2507,21 +2507,27 @@ void ScriptEditor::set_window_layout(Ref<ConfigFile> p_layout) {
|
||||||
if (!scr.is_valid()) {
|
if (!scr.is_valid()) {
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
edit(scr);
|
if (!edit(scr)) {
|
||||||
|
continue;
|
||||||
|
}
|
||||||
} else {
|
} else {
|
||||||
Error error;
|
Error error;
|
||||||
Ref<TextFile> text_file = _load_text_file(path, &error);
|
Ref<TextFile> text_file = _load_text_file(path, &error);
|
||||||
if (error != OK || !text_file.is_valid()) {
|
if (error != OK || !text_file.is_valid()) {
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
edit(text_file);
|
if (!edit(text_file)) {
|
||||||
|
continue;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!script_info.empty()) {
|
if (!script_info.empty()) {
|
||||||
ScriptEditorBase *se = Object::cast_to<ScriptEditorBase>(tab_container->get_child(i));
|
ScriptEditorBase *se = Object::cast_to<ScriptEditorBase>(tab_container->get_child(tab_container->get_tab_count() - 1));
|
||||||
|
if (se) {
|
||||||
se->set_edit_state(script_info["state"]);
|
se->set_edit_state(script_info["state"]);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
for (int i = 0; i < helps.size(); i++) {
|
for (int i = 0; i < helps.size(); i++) {
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue