diff options
author | RĂ©mi Verschelde <rverschelde@gmail.com> | 2019-03-05 22:55:16 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2019-03-05 22:55:16 +0100 |
commit | 2e79ec973f7e28de7ed550fe74f170c92d9dc298 (patch) | |
tree | 49276ca12a464bda28adc20aec2f8e97e2e21b65 | |
parent | 88355b2719fe7a103e6da82c1f58361190f2e1f1 (diff) | |
parent | 3fdbdd838074b3f6b78e6f6c2fae1f3a407c2446 (diff) |
Merge pull request #26626 from rluders/misleading-error-message-export
Fixing misleading error message when trying to export
-rw-r--r-- | editor/editor_export.cpp | 4 | ||||
-rw-r--r-- | editor/project_export.cpp | 6 | ||||
-rw-r--r-- | platform/android/export/export.cpp | 4 | ||||
-rw-r--r-- | platform/iphone/export/export.cpp | 4 | ||||
-rw-r--r-- | platform/javascript/export/export.cpp | 4 | ||||
-rw-r--r-- | platform/osx/export/export.cpp | 4 | ||||
-rw-r--r-- | platform/uwp/export/export.cpp | 4 |
7 files changed, 29 insertions, 1 deletions
diff --git a/editor/editor_export.cpp b/editor/editor_export.cpp index 75708431ec..249bbb2a39 100644 --- a/editor/editor_export.cpp +++ b/editor/editor_export.cpp @@ -1456,6 +1456,10 @@ 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) { ExportNotifier notifier(*this, p_preset, p_debug, p_path, p_flags); + if (!FileAccess::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"); diff --git a/editor/project_export.cpp b/editor/project_export.cpp index 831ebde3a6..82a6a07805 100644 --- a/editor/project_export.cpp +++ b/editor/project_export.cpp @@ -1012,7 +1012,11 @@ void ProjectExportDialog::_export_all(bool p_debug) { Error err = platform->export_project(preset, p_debug, preset->get_export_path(), 0); if (err != OK) { - error_dialog->set_text(TTR("Export templates for this platform are missing/corrupted:") + " " + platform->get_name()); + if (err == ERR_FILE_BAD_PATH) { + error_dialog->set_text(TTR("The given export path doesn't exist:") + "\n" + preset->get_export_path().get_base_dir()); + } else { + error_dialog->set_text(TTR("Export templates for this platform are missing/corrupted:") + " " + platform->get_name()); + } error_dialog->show(); error_dialog->popup_centered_minsize(Size2(300, 80)); ERR_PRINT("Failed to export project"); diff --git a/platform/android/export/export.cpp b/platform/android/export/export.cpp index 8ffd355219..0f2455914d 100644 --- a/platform/android/export/export.cpp +++ b/platform/android/export/export.cpp @@ -1489,6 +1489,10 @@ public: } } + if (!FileAccess::exists(p_path.get_base_dir())) { + return ERR_FILE_BAD_PATH; + } + FileAccess *src_f = NULL; zlib_filefunc_def io = zipio_create_io_from_file(&src_f); diff --git a/platform/iphone/export/export.cpp b/platform/iphone/export/export.cpp index 67034388b9..05907be020 100644 --- a/platform/iphone/export/export.cpp +++ b/platform/iphone/export/export.cpp @@ -836,6 +836,10 @@ Error EditorExportPlatformIOS::export_project(const Ref<EditorExportPreset> &p_p } } + if (!FileAccess::exists(dest_dir)) { + return ERR_FILE_BAD_PATH; + } + DirAccess *da = DirAccess::create(DirAccess::ACCESS_FILESYSTEM); if (da) { String current_dir = da->get_current_dir(); diff --git a/platform/javascript/export/export.cpp b/platform/javascript/export/export.cpp index ec610a70fd..b7ca1eb1d7 100644 --- a/platform/javascript/export/export.cpp +++ b/platform/javascript/export/export.cpp @@ -211,6 +211,10 @@ Error EditorExportPlatformJavaScript::export_project(const Ref<EditorExportPrese template_path = find_export_template(EXPORT_TEMPLATE_WEBASSEMBLY_RELEASE); } + if (!FileAccess::exists(p_path.get_base_dir())) { + return ERR_FILE_BAD_PATH; + } + if (template_path != String() && !FileAccess::exists(template_path)) { EditorNode::get_singleton()->show_warning(TTR("Template file not found:") + "\n" + template_path); return ERR_FILE_NOT_FOUND; diff --git a/platform/osx/export/export.cpp b/platform/osx/export/export.cpp index b8f6977b39..a0eccceed0 100644 --- a/platform/osx/export/export.cpp +++ b/platform/osx/export/export.cpp @@ -425,6 +425,10 @@ Error EditorExportPlatformOSX::export_project(const Ref<EditorExportPreset> &p_p } } + if (!FileAccess::exists(p_path.get_base_dir())) { + return ERR_FILE_BAD_PATH; + } + FileAccess *src_f = NULL; zlib_filefunc_def io = zipio_create_io_from_file(&src_f); diff --git a/platform/uwp/export/export.cpp b/platform/uwp/export/export.cpp index a4655117a7..8405608dd6 100644 --- a/platform/uwp/export/export.cpp +++ b/platform/uwp/export/export.cpp @@ -1265,6 +1265,10 @@ public: } } + if (!FileAccess::exists(p_path.get_base_dir())) { + return ERR_FILE_BAD_PATH; + } + Error err = OK; FileAccess *fa_pack = FileAccess::open(p_path, FileAccess::WRITE, &err); |