diff options
| author | Trevor Gross <tmgross@umich.edu> | 2025-05-18 17:12:13 +0000 |
|---|---|---|
| committer | Trevor Gross <tmgross@umich.edu> | 2025-05-28 15:15:43 +0000 |
| commit | ea26272c94c7a66ed018930c13c63551cb2f1390 (patch) | |
| tree | 4476fa677592c98ab5529196e7dbc91748b2f49a | |
| parent | e6d288ba17962c1f7e3ded3cb13e1ad596f9a813 (diff) | |
| download | rust-ea26272c94c7a66ed018930c13c63551cb2f1390.tar.gz rust-ea26272c94c7a66ed018930c13c63551cb2f1390.zip | |
clif: Provide better output messages for failed copies
| -rw-r--r-- | build_system/utils.rs | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/build_system/utils.rs b/build_system/utils.rs index f2399768459..d9807155a3d 100644 --- a/build_system/utils.rs +++ b/build_system/utils.rs @@ -213,11 +213,13 @@ pub(crate) fn copy_dir_recursively(from: &Path, to: &Path) { if filename == "." || filename == ".." { continue; } + let src = from.join(&filename); + let dst = to.join(&filename); if entry.metadata().unwrap().is_dir() { - fs::create_dir(to.join(&filename)).unwrap(); - copy_dir_recursively(&from.join(&filename), &to.join(&filename)); + fs::create_dir(&dst).unwrap_or_else(|e| panic!("failed to create {dst:?}: {e}")); + copy_dir_recursively(&src, &dst); } else { - fs::copy(from.join(&filename), to.join(&filename)).unwrap(); + fs::copy(&src, &dst).unwrap_or_else(|e| panic!("failed to copy {src:?}->{dst:?}: {e}")); } } } |
