diff --git a/src/lib.rs b/src/lib.rs index 1344958..add6dc0 100644 --- a/src/lib.rs +++ b/src/lib.rs @@ -110,7 +110,7 @@ fn open_on( Ok(path) => path, Err(_) => return Ok(content.into()), }; - let relpath = path.strip_prefix(git_root).unwrap(); + let relpath = path.strip_prefix(git_root.canonicalize().unwrap()).unwrap(); log::trace!("Chapter path: {}", path.display()); log::trace!("Relative path: {}", relpath.display()); @@ -151,7 +151,9 @@ fn find_git(path: &Path) -> Option<PathBuf> { git_dir = current_path.join(".git"); } - git_dir.parent().map(|p| p.to_owned()) + git_dir + .parent() + .and_then(|p| p.to_owned().canonicalize().ok()) } #[cfg(test)]