From 96e381ac0371d129719b02140a06869c8063ae46 Mon Sep 17 00:00:00 2001 From: SkyJJ Date: Tue, 31 Mar 2020 09:11:23 +0200 Subject: [PATCH] Validate supported architectures when exporting to Android (cherry picked from commit 7fcd13575eb88386dcf32a291c816569da6b42d0) --- platform/android/export/export.cpp | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/platform/android/export/export.cpp b/platform/android/export/export.cpp index d631855a9c0..78f282d2f5c 100644 --- a/platform/android/export/export.cpp +++ b/platform/android/export/export.cpp @@ -2234,6 +2234,7 @@ public: ImageLoader::load_image(path, launcher_adaptive_icon_background_image); } + Vector invalid_abis(enabled_abis); while (ret == UNZ_OK) { //get filename @@ -2279,6 +2280,7 @@ public: bool enabled = false; for (int i = 0; i < enabled_abis.size(); ++i) { if (file.begins_with("lib/" + enabled_abis[i] + "/")) { + invalid_abis.erase(enabled_abis[i]); enabled = true; break; } @@ -2318,6 +2320,13 @@ public: ret = unzGoToNextFile(pkg); } + if (!invalid_abis.empty()) { + String unsupported_arch = String(", ").join(invalid_abis); + EditorNode::add_io_error("Missing libraries in the export template for the selected architectures: " + unsupported_arch + ".\n" + + "Please build a template with all required libraries, or uncheck the missing architectures in the export preset."); + CLEANUP_AND_RETURN(ERR_FILE_NOT_FOUND); + } + if (ep.step("Adding files...", 1)) { CLEANUP_AND_RETURN(ERR_SKIP); }