mirror of
https://github.com/Next-Flip/Momentum-Firmware.git
synced 2026-04-24 03:29:57 -07:00
Show API Mismatch if load fail on different API
Possible outcomes now: - Same API + (Pre)load Fail: Failed message with info (eg MissingImports) - Different API + Load Ok: Ask to continue - Different API + Load Fail: Unskippable API mismatch error (instead of MissingImports or other)
This commit is contained in:
@@ -611,6 +611,7 @@ static LoaderMessageLoaderStatusResult loader_start_external_app(
|
||||
preload_res == FlipperApplicationPreloadStatusApiTooNew) {
|
||||
api_mismatch = true;
|
||||
} else if(preload_res != FlipperApplicationPreloadStatusSuccess) {
|
||||
api_mismatch_bypass_failed:
|
||||
const char* err_msg = flipper_application_preload_status_to_string(preload_res);
|
||||
result.value = loader_make_status_error(
|
||||
LoaderStatusErrorInternal, error_message, "Preload failed, %s: %s", path, err_msg);
|
||||
@@ -623,6 +624,7 @@ static LoaderMessageLoaderStatusResult loader_start_external_app(
|
||||
flipper_application_map_to_memory(loader->app.fap);
|
||||
FURI_LOG_I(TAG, "Loaded in %zums", (size_t)(furi_get_tick() - start));
|
||||
if(load_status != FlipperApplicationLoadStatusSuccess) {
|
||||
if(api_mismatch) goto api_mismatch_bypass_failed;
|
||||
const char* err_msg = flipper_application_load_status_to_string(load_status);
|
||||
result.value = loader_make_status_error(
|
||||
LoaderStatusErrorInternal, error_message, "Load failed, %s: %s", path, err_msg);
|
||||
|
||||
Reference in New Issue
Block a user