From 10a6744192a2058dc73a2f20d60fa813470896f2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=D0=94=D0=BC=D0=B8=D1=82=D1=80=D0=B8=D0=B9?= Date: Sun, 11 Oct 2026 01:31:22 +0500 Subject: [PATCH] Normalize MySQL inventory roots consistently on Windows --- crates/coa-core/src/mysql_snapshot.rs | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/crates/coa-core/src/mysql_snapshot.rs b/crates/coa-core/src/mysql_snapshot.rs index bed8658..9d445ee 100644 --- a/crates/coa-core/src/mysql_snapshot.rs +++ b/crates/coa-core/src/mysql_snapshot.rs @@ -26,6 +26,8 @@ fn reject_link(metadata: &fs::Metadata) -> Result<()> { } fn directories(root: &Path) -> Result> { + let canonical = fsx::canonicalize_lenient(root)?; + let root = canonical.as_path(); let mut result = BTreeSet::new(); let mut pending = vec![root.to_path_buf()]; while let Some(directory) = pending.pop() { @@ -105,6 +107,8 @@ fn compress(source: &Path, point: &Path, snapshot: &mut Snapshot) -> Result<()> } pub(crate) fn inventory(root: &Path) -> Result> { + let canonical = fsx::canonicalize_lenient(root)?; + let root = canonical.as_path(); let mut files = BTreeMap::new(); let mut directories = vec![root.to_path_buf()]; while let Some(directory) = directories.pop() {