From 106b0f0b6f6165c96d8fa31aba9ee6acb89fcc6a Mon Sep 17 00:00:00 2001 From: Kevin Day Date: Sat, 22 Nov 2025 07:50:48 -0600 Subject: [PATCH] Bugfix: Incorrect parameter processing of parameters with values. The `f_console_result_value_d` should be checked first because `f_console_result_found_d` will be set when `f_console_result_value_d` is set. --- sources/c/program/control/main/common.c | 20 ++++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/sources/c/program/control/main/common.c b/sources/c/program/control/main/common.c index 23c7b11..99f4707 100644 --- a/sources/c/program/control/main/common.c +++ b/sources/c/program/control/main/common.c @@ -326,16 +326,7 @@ extern "C" { for (i = 0; i < 3; ++i) { - if (main->program.parameters.array[ids[i]].result & f_console_result_found_d) { - main->setting.state.status = F_status_set_error(F_parameter); - - if (error_printed_not) { - error_printed_not = F_true; - } - - control_print_error_parameter_value_not(&main->program.error, names[i]); - } - else if (main->program.parameters.array[ids[i]].result & f_console_result_value_d) { + if (main->program.parameters.array[ids[i]].result & f_console_result_value_d) { index = main->program.parameters.array[ids[i]].values.array[main->program.parameters.array[ids[i]].values.used - 1]; if (!main->program.parameters.arguments.array[index].used) { @@ -348,6 +339,15 @@ extern "C" { control_print_error_parameter_value_empty(&main->program.error, names[i]); } } + else if (main->program.parameters.array[ids[i]].result & f_console_result_found_d) { + main->setting.state.status = F_status_set_error(F_parameter); + + if (error_printed_not) { + error_printed_not = F_true; + } + + control_print_error_parameter_value_not(&main->program.error, names[i]); + } } // for } -- 1.8.3.1