From e89acf6ecc57e5ce77c40240484e4bb5ee79d8d6 Mon Sep 17 00:00:00 2001 From: Kevin Day Date: Wed, 5 Apr 2023 21:02:52 -0500 Subject: [PATCH] Update: Implement threaded signal handler in Featureless Make, handling missed code blocks. I missed a few code blocks when I created commit 9e0529297bfdb1529be685eacd3ca5784ea8e946. --- level_3/fake/c/main/build.c | 13 +------------ level_3/fake/c/main/fake.c | 26 ++------------------------ level_3/fake/c/main/make/operate.c | 14 ++------------ 3 files changed, 5 insertions(+), 48 deletions(-) diff --git a/level_3/fake/c/main/build.c b/level_3/fake/c/main/build.c index 1622588..f09e682 100644 --- a/level_3/fake/c/main/build.c +++ b/level_3/fake/c/main/build.c @@ -198,18 +198,7 @@ extern "C" { for (f_array_length_t i = 0; i < files.used; ++i) { - if (!((++main->program.signal_check) % fake_signal_check_short_d)) { - if (fll_program_standard_signal_received(&main->program)) { - fll_program_print_signal_received(&main->program.warning, main->program.signal_received); - - main->setting.state.status = F_status_set_error(F_interrupt); - - break; - } - - main->program.signal_check = 0; - } - + if (fake_signal_check(main)) break; if (!files.array[i].used) continue; path_source.used = source.used; diff --git a/level_3/fake/c/main/fake.c b/level_3/fake/c/main/fake.c index 71a2559..631bf0e 100644 --- a/level_3/fake/c/main/fake.c +++ b/level_3/fake/c/main/fake.c @@ -133,17 +133,7 @@ extern "C" { break; } - if (!((++main->program.signal_check) % fake_signal_check_short_d)) { - if (fll_program_standard_signal_received(&main->program)) { - fll_program_print_signal_received(&main->program.warning, main->program.signal_received); - - main->setting.state.status = F_status_set_error(F_interrupt); - - break; - } - - main->program.signal_check = 0; - } + if (fake_signal_check(main)) break; } // for } @@ -205,19 +195,7 @@ extern "C" { } if (main->setting.state.status == F_child) break; - - if (!((++main->program.signal_check) % fake_signal_check_short_d)) { - if (fll_program_standard_signal_received(&main->program)) { - fll_program_print_signal_received(&main->program.warning, main->program.signal_received); - - main->setting.state.status = F_status_set_error(F_interrupt); - - break; - } - - main->program.signal_check = 0; - } - + if (fake_signal_check(main)) break; if (F_status_is_error(main->setting.state.status)) break; } // for } diff --git a/level_3/fake/c/main/make/operate.c b/level_3/fake/c/main/make/operate.c index 19dd6dd..6eeff4c 100644 --- a/level_3/fake/c/main/make/operate.c +++ b/level_3/fake/c/main/make/operate.c @@ -1358,20 +1358,10 @@ extern "C" { state_process.operation_previous = state_process.operation; state_process.operation = 0; - if (!((++main->program.signal_check) % fake_signal_check_short_d)) { - if (fll_program_standard_signal_received(&main->program)) { - fll_program_print_signal_received(&main->program.warning, main->program.signal_received); - - main->setting.state.status = F_status_set_error(F_interrupt); - - break; - } - - main->program.signal_check = 0; - } - for (j = 0; j < fake_max_operation_d; ++j) { + if (fake_signal_check(main)) break; + if (f_compare_dynamic_partial_string(operations_name[j].string, main->buffer, operations_name[j].used, section->objects.array[i]) == F_equal_to) { state_process.operation = operations_type[j]; -- 1.8.3.1