### Godot version

4.0 beta 12 mono

### System information

MacOS 13.1, Apple M1 Pro

### Issue description

When `text_editor/external/use_external_editor` is set to true but `text_editor/external/exec_path` is not set and I create a new script and attach it to a node Godot freezes and i need to force quit the application.
Also after a restart when double clicking on the script the application freezes but I can quit normally

### Steps to reproduce

- Set Use External Editor to true in Editor Settings and leave Exec Path empty
- Create a new project with Moblie Renderer and Git Versioning in Godot
- Create a 3D Scene
- Create a gd script in the FileSystem inspector or directly attach the script to a node

### Minimal reproduction project

[New Game Project.zip](https://github.com/godotengine/godot/files/10420510/New.Game.Project.zip)

find_in_files_dialog->set_find_in_files_mode(FindInFilesDialog::REPLACE_MODE);
	find_in_files_dialog->set_search_text(text);
	find_in_files_dialog->set_replace_text("");
	find_in_files_dialog->popup_centered();
}
void ScriptEditor::_on_find_in_files_result_selected(String fpath, int line_number, int begin, int end) {
	if (ResourceLoader::exists(fpath)) {
		Ref<Resource> res = ResourceLoader::load(fpath);
		if (fpath.get_extension() == "gdshader") {
			ShaderEditorPlugin *shader_editor = Object::cast_to<ShaderEditorPlugin>(EditorNode::get_singleton()->get_editor_data().get_editor("Shader"));
			shader_editor->edit(res.ptr());
			shader_editor->make_visible(true);
			shader_editor->get_shader_editor(res)->goto_line_selection(line_number - 1, begin, end);
			return;
		} else if (fpath.get_extension() == "tscn") {
			EditorNode::get_singleton()->load_scene(fpath);
			return;
		} else {
			Ref<Script> scr = res;
			if (scr.is_valid()) {
				edit(scr);
				ScriptTextEditor *ste = Object::cast_to<ScriptTextEditor>(_get_current_editor());
				if (ste) {
					ste->goto_line_selection(line_number - 1, begin, end);
				}
				return;
			}
		}
	}