mirror of
https://github.com/Next-Flip/Momentum-Firmware.git
synced 2026-06-20 20:38:24 -07:00
CLI: Fix crash with ir universal command --nobuild
This commit is contained in:
@@ -7,6 +7,7 @@
|
||||
### Fixed:
|
||||
- CLI:
|
||||
- Fix crash when opening CLI/qFlipper/WebUpdater if some unexpected files are present in `/ext/apps_data/cli/plugins` (by @WillyJL)
|
||||
- FIx crash with `ir universal` command (by @WillyJL)
|
||||
- OFW: Fix subghz chat command (by @GameLord2011)
|
||||
- Sub-GHz:
|
||||
- UL: Fix CAME 24bit decoder (by @xMasterX)
|
||||
|
||||
@@ -95,7 +95,8 @@ void infrared_brute_force_set_db_filename(InfraredBruteForce* brute_force, const
|
||||
|
||||
InfraredErrorCode infrared_brute_force_calculate_messages(
|
||||
InfraredBruteForce* brute_force,
|
||||
bool auto_detect_buttons) {
|
||||
bool auto_detect_buttons,
|
||||
bool ignore_unknown_buttons) {
|
||||
furi_check(brute_force);
|
||||
furi_assert(!brute_force->is_started);
|
||||
furi_assert(brute_force->db_filename);
|
||||
@@ -154,6 +155,8 @@ InfraredErrorCode infrared_brute_force_calculate_messages(
|
||||
auto_detect_button_index++,
|
||||
furi_string_get_cstr(signal_name));
|
||||
record = InfraredBruteForceRecordDict_get(brute_force->records, signal_name);
|
||||
} else if(ignore_unknown_buttons) {
|
||||
continue;
|
||||
} else {
|
||||
FURI_LOG_E(TAG, "Unknown signal name: %s", furi_string_get_cstr(signal_name));
|
||||
furi_crash("Unknown signal name");
|
||||
|
||||
@@ -52,7 +52,8 @@ void infrared_brute_force_set_db_filename(InfraredBruteForce* brute_force, const
|
||||
*/
|
||||
InfraredErrorCode infrared_brute_force_calculate_messages(
|
||||
InfraredBruteForce* brute_force,
|
||||
bool auto_detect_buttons);
|
||||
bool auto_detect_buttons,
|
||||
bool ignore_unknown_buttons);
|
||||
|
||||
/**
|
||||
* @brief Start transmitting signals from a category stored in an InfraredBruteForce's instance dictionary.
|
||||
|
||||
@@ -470,7 +470,8 @@ static void infrared_cli_brute_force_signals(
|
||||
printf("Missing signal name.\r\n");
|
||||
break;
|
||||
}
|
||||
if(infrared_brute_force_calculate_messages(brute_force, false) != InfraredErrorCodeNone) {
|
||||
if(infrared_brute_force_calculate_messages(brute_force, false, true) !=
|
||||
InfraredErrorCodeNone) {
|
||||
printf("Invalid remote name.\r\n");
|
||||
break;
|
||||
}
|
||||
|
||||
@@ -50,7 +50,7 @@ static void infrared_scene_universal_common_hide_popup(InfraredApp* infrared) {
|
||||
static int32_t infrared_scene_universal_common_task_callback(void* context) {
|
||||
InfraredApp* infrared = context;
|
||||
const InfraredErrorCode error =
|
||||
infrared_brute_force_calculate_messages(infrared->brute_force, false);
|
||||
infrared_brute_force_calculate_messages(infrared->brute_force, false, false);
|
||||
view_dispatcher_send_custom_event(
|
||||
infrared->view_dispatcher,
|
||||
infrared_custom_event_pack(InfraredCustomEventTypeTaskFinished, 0));
|
||||
|
||||
@@ -16,7 +16,7 @@ static int32_t infrared_scene_universal_from_file_task_callback(void* context) {
|
||||
ButtonMenu* button_menu = infrared->button_menu;
|
||||
InfraredBruteForce* brute_force = infrared->brute_force;
|
||||
const InfraredErrorCode error =
|
||||
infrared_brute_force_calculate_messages(infrared->brute_force, true);
|
||||
infrared_brute_force_calculate_messages(infrared->brute_force, true, false);
|
||||
|
||||
if(!INFRARED_ERROR_PRESENT(error)) {
|
||||
// add btns
|
||||
|
||||
Reference in New Issue
Block a user