From 325b899214ac13519153318e66c889a31c15342d Mon Sep 17 00:00:00 2001 From: Pavel Cahyna Date: Mon, 22 Jun 2026 15:17:07 +0200 Subject: [PATCH] Eliminate redundant chdir_do If one-top-level is not provided, chdir_do is a no-op. --- src/extract.c | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/src/extract.c b/src/extract.c index 2ad7806d..90cc2310 100644 --- a/src/extract.c +++ b/src/extract.c @@ -1989,10 +1989,13 @@ extract_archive (void) bool ok = false; if (fun) { - /* Create one_top_level dir if it does not exist. */ - one_top_level_prepare = true; - chdir_do (chdir_current, !!one_top_level_dir); - one_top_level_prepare = false; + if (one_top_level_dir) + { + /* Create one_top_level dir if it does not exist. */ + one_top_level_prepare = true; + chdir_do (chdir_current, true); + one_top_level_prepare = false; + } if (fun (current_stat_info.file_name, typeflag)) ok = true; }