Unverified Commit cec49bd1 by Rémi Verschelde Committed by GitHub

Merge pull request #39203 from Xrayez/fix-no-lang-crash

Prevent crash attaching a script with no languages registered
parents 4749437b 52f3cfca
......@@ -2557,6 +2557,11 @@ void SceneTreeDock::_focus_node() {
}
void SceneTreeDock::attach_script_to_selected(bool p_extend) {
if (ScriptServer::get_language_count() == 0) {
EditorNode::get_singleton()->show_warning(TTR("Cannot attach a script: there are no languages registered.\nThis is probably because this editor was built with all language modules disabled."));
return;
}
if (!profile_allow_script_editing) {
return;
}
......
......@@ -783,7 +783,7 @@ ScriptCreateDialog::ScriptCreateDialog() {
gc->add_child(memnew(Label(TTR("Language:"))));
gc->add_child(language_menu);
default_language = 0;
default_language = -1;
for (int i = 0; i < ScriptServer::get_language_count(); i++) {
String lang = ScriptServer::get_language(i)->get_name();
language_menu->add_item(lang);
......@@ -791,8 +791,9 @@ ScriptCreateDialog::ScriptCreateDialog() {
default_language = i;
}
}
language_menu->select(default_language);
if (default_language >= 0) {
language_menu->select(default_language);
}
current_language = default_language;
language_menu->connect("item_selected", callable_mp(this, &ScriptCreateDialog::_lang_changed));
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment