diff options
| author | Marcelo Fernandez | 2018-03-06 12:13:18 -0300 |
|---|---|---|
| committer | Hein-Pieter van Braam | 2018-04-29 15:12:21 +0200 |
| commit | e7837828f62c97b4a9722d34dfffb8d2b7cf74ea (patch) | |
| tree | ed9e79111a3b1c5921b6a9f3f15c7bf568018186 /editor/editor_export.cpp | |
| parent | 272fb05270c4d812d5fb97f2d3290349e694c7f1 (diff) | |
| download | godot-e7837828f62c97b4a9722d34dfffb8d2b7cf74ea.tar.gz godot-e7837828f62c97b4a9722d34dfffb8d2b7cf74ea.tar.zst godot-e7837828f62c97b4a9722d34dfffb8d2b7cf74ea.zip | |
Improved error checking at EditorExportPlatformPC::export_project
(cherry picked from commit 0876502f7288a6d4e4bfb58f8692db3516bebb7c)
Diffstat (limited to '')
| -rw-r--r-- | editor/editor_export.cpp | 29 |
1 files changed, 13 insertions, 16 deletions
diff --git a/editor/editor_export.cpp b/editor/editor_export.cpp index 91292b068..8e4d241a8 100644 --- a/editor/editor_export.cpp +++ b/editor/editor_export.cpp @@ -1353,27 +1353,24 @@ Error EditorExportPlatformPC::export_project(const Ref<EditorExportPreset> &p_pr DirAccess *da = DirAccess::create(DirAccess::ACCESS_FILESYSTEM); Error err = da->copy(template_path, p_path, get_chmod_flags()); - memdelete(da); - - if (err != OK) { - return err; - } - - String pck_path = p_path.get_basename() + ".pck"; + if (err == OK) { + String pck_path = p_path.get_basename() + ".pck"; - Vector<SharedObject> so_files; + Vector<SharedObject> so_files; - err = save_pack(p_preset, pck_path, &so_files); + err = save_pack(p_preset, pck_path, &so_files); - if (err != OK || so_files.empty()) - return err; - //if shared object files, copy them - da = DirAccess::create(DirAccess::ACCESS_FILESYSTEM); - for (int i = 0; i < so_files.size(); i++) { - da->copy(so_files[i].path, p_path.get_base_dir().plus_file(so_files[i].path.get_file())); + if (err == OK && !so_files.empty()) { + //if shared object files, copy them + da = DirAccess::create(DirAccess::ACCESS_FILESYSTEM); + for (int i = 0; i < so_files.size() && err == OK; i++) { + err = da->copy(so_files[i].path, p_path.get_base_dir().plus_file(so_files[i].path.get_file())); + } + } } + memdelete(da); - return OK; + return err; } void EditorExportPlatformPC::set_extension(const String &p_extension, const String &p_feature_key) { |
