if (F_status_is_error_not(status) && main->parameters[fss_basic_list_read_parameter_delimit].result == f_console_result_additional) {
f_array_length_t location = 0;
f_array_length_t length = 0;
+ uint16_t signal_check = 0;
// Set the value to 0 to allow for detecting mode based on what is provided.
data.delimit_mode = 0;
for (f_array_length_t i = 0; i < main->parameters[fss_basic_list_read_parameter_delimit].values.used; ++i) {
- if (fss_basic_list_read_signal_received(main)) {
- status = F_status_set_error(F_interrupt);
- break;
+ if (!((++signal_check) % fss_basic_list_read_signal_check_d)) {
+ if (fss_basic_list_read_signal_received(main)) {
+ status = F_status_set_error(F_interrupt);
+ break;
+ }
+
+ signal_check = 0;
}
location = main->parameters[fss_basic_list_read_parameter_delimit].values.array[i];
if (F_status_is_error_not(status) && main->remaining.used > 0) {
f_file_t file = f_file_t_initialize;
f_array_length_t size_file = 0;
+ uint16_t signal_check = 0;
for (f_array_length_t i = 0; i < main->remaining.used; ++i) {
- if (fss_basic_list_read_signal_received(main)) {
- status = F_status_set_error(F_interrupt);
- break;
+ if (!((++signal_check) % fss_basic_list_read_signal_check_d)) {
+ if (fss_basic_list_read_signal_received(main)) {
+ status = F_status_set_error(F_interrupt);
+ break;
+ }
+
+ signal_check = 0;
}
data.files.array[data.files.used].range.start = data.buffer.used;
f_array_length_t position_depth = 0;
f_array_length_t position_at = 0;
f_array_length_t position_name = 0;
+ uint16_t signal_check = 0;
for (f_array_length_t i = 0; i < data->depths.used; ++i) {
- if (fss_basic_list_read_signal_received(main)) {
- return F_status_set_error(F_interrupt);
+ if (!((++signal_check) % fss_basic_list_read_signal_check_d)) {
+ if (fss_basic_list_read_signal_received(main)) {
+ return F_status_set_error(F_interrupt);
+ }
+
+ signal_check = 0;
}
data->depths.array[i].depth = 0;
for (f_array_length_t j = i + 1; j < data->depths.used; ++j) {
- if (fss_basic_list_read_signal_received(main)) {
- return F_status_set_error(F_interrupt);
+ if (!((++signal_check) % fss_basic_list_read_signal_check_d)) {
+ if (fss_basic_list_read_signal_received(main)) {
+ return F_status_set_error(F_interrupt);
+ }
+
+ signal_check = 0;
}
if (data->depths.array[i].depth == data->depths.array[j].depth) {
f_array_lengths_t except_none = f_array_lengths_t_initialize;
f_array_lengths_t *delimits_object = fss_basic_list_read_delimit_object_is(0, data) ? &data->delimits_object : &except_none;
f_array_lengths_t *delimits_content = fss_basic_list_read_delimit_content_is(0, data) ? &data->delimits_content : &except_none;
+ uint16_t signal_check = 0;
if (data->option & fss_basic_list_read_data_option_raw_d) {
delimits_object = &except_none;
if (!names[i]) continue;
- if (fss_basic_list_read_signal_received(main)) {
- return F_status_set_error(F_interrupt);
+ if (!((++signal_check) % fss_basic_list_read_signal_check_d)) {
+ if (fss_basic_list_read_signal_received(main)) {
+ return F_status_set_error(F_interrupt);
+ }
+
+ signal_check = 0;
}
fss_basic_list_read_print_at(main, i, *delimits_object, *delimits_content, data);
f_array_length_t at = 0;
f_status_t status = F_none;
+ uint16_t signal_check = 0;
for (f_array_length_t i = 0; i < data->objects.used; ++i) {
if (!names[i]) continue;
- if (fss_basic_list_read_signal_received(main)) {
- return F_status_set_error(F_interrupt);
+ if (!((++signal_check) % fss_basic_list_read_signal_check_d)) {
+ if (fss_basic_list_read_signal_received(main)) {
+ return F_status_set_error(F_interrupt);
+ }
+
+ signal_check = 0;
}
if (at == data->depths.array[0].value_at) {
}
f_array_length_t max = 0;
+ uint16_t signal_check = 0;
for (f_array_length_t at = 0; at < data->contents.used; ++at) {
if (!names[at]) continue;
- if (fss_basic_list_read_signal_received(main)) {
- return F_status_set_error(F_interrupt);
+ if (!((++signal_check) % fss_basic_list_read_signal_check_d)) {
+ if (fss_basic_list_read_signal_received(main)) {
+ return F_status_set_error(F_interrupt);
+ }
+
+ signal_check = 0;
}
if (data->contents.array[at].used > max) {
f_string_range_t range = f_string_range_t_initialize;
f_array_length_t i = 0;
+ uint16_t signal_check = 0;
range.start = data->contents.array[at].array[0].start;
range.stop = data->contents.array[at].array[0].stop;
for (i = range.start; i <= range.stop; ++i) {
- if (fss_basic_list_read_signal_received(main)) {
- return F_status_set_error(F_interrupt);
+ if (!((++signal_check) % fss_basic_list_read_signal_check_d)) {
+ if (fss_basic_list_read_signal_received(main)) {
+ return F_status_set_error(F_interrupt);
+ }
+
+ signal_check = 0;
}
if (data->buffer.string[i] == f_string_eol_s[0]) {
f_array_length_t line = 0;
f_status_t status = F_none;
+ uint16_t signal_check = 0;
for (f_array_length_t i = 0; i < data->contents.used; ++i) {
if (!names[i]) continue;
- if (fss_basic_list_read_signal_received(main)) {
- return F_status_set_error(F_interrupt);
+ if (!((++signal_check) % fss_basic_list_read_signal_check_d)) {
+ if (fss_basic_list_read_signal_received(main)) {
+ return F_status_set_error(F_interrupt);
+ }
+
+ signal_check = 0;
}
status = fss_basic_list_read_process_at_line(main, i, *delimits_object, *delimits_content, data, &line);
f_array_length_t total = 0;
f_string_range_t range = f_string_range_t_initialize;
f_array_length_t i = 0;
+ uint16_t signal_check = 0;
for (f_array_length_t at = 0; at < data->contents.used; ++at) {
if (!names[at]) continue;
- if (fss_basic_list_read_signal_received(main)) {
- return F_status_set_error(F_interrupt);
+ if (!((++signal_check) % fss_basic_list_read_signal_check_d)) {
+ if (fss_basic_list_read_signal_received(main)) {
+ return F_status_set_error(F_interrupt);
+ }
+
+ signal_check = 0;
}
if (data->option & fss_basic_list_read_data_option_object_d) {