From b9f4d59bf4304682b26a33227db3533f366d9f71 Mon Sep 17 00:00:00 2001 From: brxken128 <77554505+brxken128@users.noreply.github.com> Date: Tue, 17 Jan 2023 12:54:30 +0000 Subject: [PATCH] fully working file duplicator --- core/src/object/fs/duplicate.rs | 21 ++++++++++----------- 1 file changed, 10 insertions(+), 11 deletions(-) diff --git a/core/src/object/fs/duplicate.rs b/core/src/object/fs/duplicate.rs index c5e12106d..e3e72c61c 100644 --- a/core/src/object/fs/duplicate.rs +++ b/core/src/object/fs/duplicate.rs @@ -126,6 +126,16 @@ impl StatefulJob for FileDuplicatorJob { obj_type, }, }); + + let path_suffix = entry + .path() + .strip_prefix(job_state.root_path.clone()) + .unwrap() + .to_path_buf(); + + let mut path = job_state.root_prefix.clone(); + path.push(path_suffix); + std::fs::create_dir_all(path)?; } else { let obj_type = ObjectType::File; state.steps.push_back(FileDuplicatorJobStep { @@ -138,17 +148,6 @@ impl StatefulJob for FileDuplicatorJob { }); }; - let mut path_suffix = entry - .path() - .strip_prefix(job_state.root_path.clone()) - .unwrap() - .to_path_buf(); - path_suffix.set_file_name(""); - - let mut path = job_state.root_prefix.clone(); - path.push(path_suffix); - std::fs::create_dir_all(path)?; - ctx.progress(vec![JobReportUpdate::TaskCount(state.steps.len())]); } }