aboutsummaryrefslogtreecommitdiffhomepage
path: root/crates/shirabe/src/util
diff options
context:
space:
mode:
authornsfisis <nsfisis@gmail.com>2026-08-09 06:39:08 +0900
committernsfisis <nsfisis@gmail.com>2026-08-09 06:39:08 +0900
commitff17dcdb757656c5e81b10070a7bbcc4ef3e97f7 (patch)
treeb11bf68b9466242e6021bef0e3b0e98e566647e2 /crates/shirabe/src/util
parent6dd09abb33d86e1aa737667f9e15a18ed41d52e1 (diff)
downloadphp-shirabe-ff17dcdb757656c5e81b10070a7bbcc4ef3e97f7.tar.gz
php-shirabe-ff17dcdb757656c5e81b10070a7bbcc4ef3e97f7.tar.zst
php-shirabe-ff17dcdb757656c5e81b10070a7bbcc4ef3e97f7.zip
refactor(path): build paths with Path::join
Concatenating a directory, MAIN_SEPARATOR and a component reimplements what Path::join already does. Joining directly also drops the separator from the intermediate values it used to be baked into, such as ClassLoader's $pathEnd. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Diffstat (limited to 'crates/shirabe/src/util')
-rw-r--r--crates/shirabe/src/util/filesystem.rs11
1 files changed, 5 insertions, 6 deletions
diff --git a/crates/shirabe/src/util/filesystem.rs b/crates/shirabe/src/util/filesystem.rs
index a12c6d64..2c4cbcc6 100644
--- a/crates/shirabe/src/util/filesystem.rs
+++ b/crates/shirabe/src/util/filesystem.rs
@@ -488,12 +488,11 @@ impl Filesystem {
let mut result = true;
for file in &ri {
- let target_path = format!(
- "{}{}{}",
- target,
- std::path::MAIN_SEPARATOR,
- ri.get_sub_pathname()
- );
+ let target_path = Path::new(&target)
+ .join(ri.get_sub_pathname())
+ .into_os_string()
+ .into_string()
+ .unwrap();
if file.is_dir() {
self.ensure_directory_exists(&target_path)?;
} else {