### Godot version

3.5.1mono

### System information

windows10

### Issue description

Error message
 scene/main/node.cpp:1362 - Index p_index = 0 is out of bounds (data.children.size() = 0).
 scene/main/node.cpp:397 - Parameter "p_child" is null.
 scene/gui/tab_container.cpp:593 - Index p_current = 0 is out of bounds (get_tab_count() = 0).
See "Steps to reproduce for details"

### Steps to reproduce

Set an external text editor
Create a script
Drop the script to the built-in text editor like this image:
![image](https://user-images.githubusercontent.com/119792950/209504041-039f2620-5e42-4c0f-8c41-cd24486fb3d2.png)
And got error message:
 scene/main/node.cpp:1362 - Index p_index = 0 is out of bounds (data.children.size() = 0).
 scene/main/node.cpp:397 - Parameter "p_child" is null.
 scene/gui/tab_container.cpp:593 - Index p_current = 0 is out of bounds (get_tab_count() = 0).

### Minimal reproduction project

An empty project
const int child_count = tab_container->get_tab_count();
	for (int i = 0; i < child_count; i++) {
		if (Object::cast_to<ScriptEditorBase>(tab_container->get_tab_control(i))) {
			return true;
		}
	}
	return false;
}
void ScriptEditor::_prepare_file_menu() {
	PopupMenu *menu = file_menu->get_popup();
	const bool current_is_doc = _get_current_editor() == nullptr;
	menu->set_item_disabled(menu->get_item_index(FILE_REOPEN_CLOSED), previous_scripts.is_empty());
	menu->set_item_disabled(menu->get_item_index(FILE_SAVE), current_is_doc);
	menu->set_item_disabled(menu->get_item_index(FILE_SAVE_AS), current_is_doc);
	menu->set_item_disabled(menu->get_item_index(FILE_SAVE_ALL), !_has_script_tab());
	menu->set_item_disabled(menu->get_item_index(FILE_TOOL_RELOAD_SOFT), current_is_doc);
	menu->set_item_disabled(menu->get_item_index(FILE_COPY_PATH), current_is_doc);
	menu->set_item_disabled(menu->get_item_index(SHOW_IN_FILE_SYSTEM), current_is_doc);
	menu->set_item_disabled(menu->get_item_index(WINDOW_PREV), history_pos <= 0);
	menu->set_item_disabled(menu->get_item_index(WINDOW_NEXT), history_pos >= history.size() - 1);
	menu->set_item_disabled(menu->get_item_index(FILE_CLOSE), tab_container->get_tab_count() < 1);
	menu->set_item_disabled(menu->get_item_index(CLOSE_ALL), tab_container->get_tab_count() < 1);
	menu->set_item_disabled(menu->get_item_index(CLOSE_OTHER_TABS), tab_container->get_tab_count() <= 1);
	menu->set_item_disabled(menu->get_item_index(CLOSE_DOCS), !_has_docs_tab());
	menu->set_item_disabled(menu->get_item_index(FILE_RUN), current_is_doc);
}
void ScriptEditor::_tab_changed(int p_which) {
	ensure_select_current();
}
void ScriptEditor::_notification(int p_what) {