Skip to content

[stable/20230725][llvm][vfs] Preserve paths for fallback/fallthrough in RedirectingFileSystem #8411

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Conversation

benlangmuir
Copy link

When we lookup in the external filesystem, do not remove . and ..
components from the original path. For .. this is a correctness issue in
the presence of symlinks, while for . it is simply better practice to
preserve the original path to better match the behaviour of other
filesystems. The only modification we need is to apply the working
directory, since it could differ from the external filesystem.

rdar://123655660
(cherry picked from commit 5a8a7ee)

…eSystem (llvm#85307)

When we lookup in the external filesystem, do not remove . and ..
components from the original path. For .. this is a correctness issue in
the presence of symlinks, while for . it is simply better practice to
preserve the original path to better match the behaviour of other
filesystems. The only modification we need is to apply the working
directory, since it could differ from the external filesystem.

rdar://123655660
(cherry picked from commit 5a8a7ee)
Handle exists() method that is virtual on the branch.

rdar://124694281
(cherry picked from commit 1f368e9)
@benlangmuir
Copy link
Author

@swift-ci please test

@benlangmuir
Copy link
Author

@swift-ci please test llvm

@benlangmuir
Copy link
Author

@swift-ci please test Windows

@benlangmuir
Copy link
Author

Clang test failures are unrelated; should be fixed by #8409

@benlangmuir benlangmuir merged commit 65d2f2d into swiftlang:stable/20230725 Mar 18, 2024
@benlangmuir benlangmuir deleted the redirecting-fs-path-changes-stable branch March 18, 2024 16:07
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant