Create parent directories on export.
Fixes #42231. This works for both the UI and the --export CLI flag.
This commit is contained in:
parent
90faf04f29
commit
66a278f585
1 changed files with 2 additions and 7 deletions
|
@ -1831,10 +1831,6 @@ List<String> EditorExportPlatformPC::get_binary_extensions(const Ref<EditorExpor
|
||||||
Error EditorExportPlatformPC::export_project(const Ref<EditorExportPreset> &p_preset, bool p_debug, const String &p_path, int p_flags) {
|
Error EditorExportPlatformPC::export_project(const Ref<EditorExportPreset> &p_preset, bool p_debug, const String &p_path, int p_flags) {
|
||||||
ExportNotifier notifier(*this, p_preset, p_debug, p_path, 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_debug = p_preset->get("custom_template/debug");
|
||||||
String custom_release = p_preset->get("custom_template/release");
|
String custom_release = p_preset->get("custom_template/release");
|
||||||
|
|
||||||
|
@ -1863,9 +1859,9 @@ Error EditorExportPlatformPC::export_project(const Ref<EditorExportPreset> &p_pr
|
||||||
return ERR_FILE_NOT_FOUND;
|
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());
|
Error err = da->copy(template_path, p_path, get_chmod_flags());
|
||||||
memdelete(da);
|
|
||||||
|
|
||||||
if (err == OK) {
|
if (err == OK) {
|
||||||
String pck_path;
|
String pck_path;
|
||||||
|
@ -1901,7 +1897,6 @@ Error EditorExportPlatformPC::export_project(const Ref<EditorExportPreset> &p_pr
|
||||||
err = sign_shared_object(p_preset, p_debug, p_path.get_base_dir().plus_file(so_files[i].path.get_file()));
|
err = sign_shared_object(p_preset, p_debug, p_path.get_base_dir().plus_file(so_files[i].path.get_file()));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
memdelete(da);
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue