mirror of
https://github.com/boykopovar/AnyPS5.git
synced 2026-11-02 12:56:05 +00:00
sceKernelRmdir decided whether the last component was a symbolic link with std::filesystem::is_symlink, which follows the link with WinLibs libstdc++ on Windows. A dangling or self-referencing file link then looked missing on Windows 10 (ENOENT instead of ENOTDIR), and a directory link to an empty directory looked like that directory, so rmdir removed the link and returned 0. The last component is now classified with FillLinkStat, the same lstat path lstat_nid_postfix uses, matching FreeBSD 11 kern_rmdirat, which returns ENOTDIR for any non-directory vnode found without following the last link. Fixes #12079 Co-Authored-By: Claude Opus 5.5 <[email protected]>