From 0a10eba65bea4ec4de5a4e135799a2ed0507c510 Mon Sep 17 00:00:00 2001 From: Kevin Day Date: Sat, 26 Apr 2025 16:30:46 -0500 Subject: [PATCH] Cleanup: Private fl_directory_do() code structure. Reduce the duplicate code by moving the callback outside of two blocks. --- level_1/fl_directory/c/private-directory.c | 13 +++++-------- 1 file changed, 5 insertions(+), 8 deletions(-) diff --git a/level_1/fl_directory/c/private-directory.c b/level_1/fl_directory/c/private-directory.c index 59e0c35..86c2b5e 100644 --- a/level_1/fl_directory/c/private-directory.c +++ b/level_1/fl_directory/c/private-directory.c @@ -124,9 +124,8 @@ extern "C" { } if (flag_actions[action]) { - recurse->state.status = F_okay; - if ((flag & f_directory_recurse_do_flag_directory_d) && (flag_actions[action] & f_directory_recurse_do_flag_action_d)) { + recurse->state.status = F_okay; used_directory = recurse->path.used; if (recurse->depth < recurse->depth_max) { @@ -148,14 +147,12 @@ extern "C" { // Reset the path after operating on child directories. recurse->path.used = used_directory; recurse->path.string[recurse->path.used] = 0; - recurse->state.status = F_okay; - - recurse->action(recurse, name, f_directory_recurse_do_flag_action_d | flag); - } - else { - recurse->action(recurse, name, flag_actions[action] | flag); } + recurse->state.status = F_okay; + + recurse->action(recurse, name, flag_actions[action] | flag); + if (F_status_is_error(recurse->state.status)) { private_inline_fl_directory_do_handle(recurse, name, flag_actions[action] | flag); if (F_status_is_error(recurse->state.status)) break; -- 1.8.3.1