### 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
if (p_line > 0) {
					se->goto_line(p_line - 1);
				}
			}
			_update_script_names();
			script_list->ensure_current_is_visible();
			return true;
		}
	}
	
	ScriptEditorBase *se = nullptr;
	for (int i = script_editor_func_count - 1; i >= 0; i--) {
		se = script_editor_funcs[i](p_resource);
		if (se) {
			break;
		}
	}
	ERR_FAIL_COND_V(!se, false);
	se->set_edited_resource(p_resource);
	if (!p_resource->is_class("VisualScript")) {
		bool highlighter_set = false;
		for (int i = 0; i < syntax_highlighters.size(); i++) {
			Ref<EditorSyntaxHighlighter> highlighter = syntax_highlighters[i]->_create();
			if (highlighter.is_null()) {
				continue;
			}
			se->add_syntax_highlighter(highlighter);
			if (scr != nullptr && !highlighter_set) {
				PackedStringArray languages = highlighter->_get_supported_languages();
				if (languages.has(scr->get_language()->get_name())) {