When a user types a folder path manually in AddVersion, trailing slashes and Windows casing differences bypass the foldersInUse equality check. A path that is semantically identical to an existing version's folder passes the guard, allowing the launcher to unpack into (and later delete) a folder the user registered separately.
Fix: normalize both sides of the comparison before checking equality (resolve, lowercase on Windows, strip trailing separator).
When a user types a folder path manually in AddVersion, trailing slashes and Windows casing differences bypass the
foldersInUseequality check. A path that is semantically identical to an existing version's folder passes the guard, allowing the launcher to unpack into (and later delete) a folder the user registered separately.Fix: normalize both sides of the comparison before checking equality (resolve, lowercase on Windows, strip trailing separator).