### 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
current->convert_indent_to_tabs();
		}
	}
	Ref<Resource> resource = current->get_edited_resource();
	Ref<TextFile> text_file = resource;
	Ref<Script> scr = resource;
	if (text_file != nullptr) {
		current->apply_code();
		_save_text_file(text_file, text_file->get_path());
		return;
	}
	if (scr.is_valid()) {
		clear_docs_from_script(scr);
	}
	if (resource->is_built_in()) {
		
		const String scene_path = resource->get_path().get_slice("::", 0);
		if (!scene_path.is_empty()) {
			Vector<String> scene_to_save;
			scene_to_save.push_back(scene_path);
			EditorNode::get_singleton()->save_scene_list(scene_to_save);
		}
	} else {
		EditorNode::get_singleton()->save_resource(resource);
	}
	if (scr.is_valid()) {
		update_docs_from_script(scr);
	}
}
void ScriptEditor::save_all_scripts() {