diff --git a/editor/editor_export.cpp b/editor/editor_export.cpp index 95829b4a596..ad95e26aa75 100644 --- a/editor/editor_export.cpp +++ b/editor/editor_export.cpp @@ -1624,10 +1624,6 @@ List EditorExportPlatformPC::get_binary_extensions(const Ref &p_preset, bool p_debug, const String &p_path, int p_flags) { ExportNotifier notifier(*this, p_preset, p_debug, p_path, p_flags); - if (!DirAccess::exists(p_path.get_base_dir())) { - return ERR_FILE_BAD_PATH; - } - String custom_debug = p_preset->get("custom_template/debug"); String custom_release = p_preset->get("custom_template/release"); @@ -1656,9 +1652,9 @@ Error EditorExportPlatformPC::export_project(const Ref &p_pr return ERR_FILE_NOT_FOUND; } - DirAccess *da = DirAccess::create(DirAccess::ACCESS_FILESYSTEM); + DirAccessRef da = DirAccess::create(DirAccess::ACCESS_FILESYSTEM); + da->make_dir_recursive(p_path.get_base_dir()); Error err = da->copy(template_path, p_path, get_chmod_flags()); - memdelete(da); if (err == OK) { String pck_path; @@ -1694,7 +1690,6 @@ Error EditorExportPlatformPC::export_project(const Ref &p_pr err = sign_shared_object(p_preset, p_debug, p_path.get_base_dir().plus_file(so_files[i].path.get_file())); } } - memdelete(da); } }