fix(worktree): refuse a removal path that resolves two ways
Two inputs could still send git somewhere the filesystem half was not looking. A Windows drive-relative path makes `join` drop `repo_path` entirely, leaving `C:trees` for a per-drive current directory the app and git do not share. And a path the OS holds as non-UTF-8 came out of `to_string_lossy` as a DIFFERENT absolute path, which git would have gone and deleted while every removal here still used the original bytes. Both now stop the removal rather than guess at it. Handing git a directory other than the one we probed is the single thing this resolution exists to prevent, so it cannot be the thing it falls back to.
X
xintaofei committed
fb7947f6cabeedb42f32e8f9823b474b76a6f1ef
Parent: 2870969