-
Notifications
You must be signed in to change notification settings - Fork 1.5k
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
<filesystem>
: __std_fs_get_stats
should work on FAT32
#2373
Conversation
DevCom-1638272 with the same issue. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I have looked this over (with a pen and paper to make sure I understood the function!) and I believe this to be a correct and good change. I also had billy look over my shoulder at it, and he didn't have any major problems.
My one concern was adding an extra function call when checking only for reparse point data, but given that we have multiple calls to GetFileInformationByHandleEx
anyways, and the call is quite cheap, I'm no longer concerned.
Thanks!
On the other hand, in a typical case, when it is not a reparse point, the number of calls is the same; actually when checking not only for RP a call is saved. |
I'm mirroring this to the MSVC-internal repo - please notify me if any further changes are pushed. |
Thanks for fixing this most modern filesystem library to work with this most ancient filesystem! 😹 🎉 🚀 |
MSVC's `std::filesystem` has a bug that causes it to fail to retrieve file information on exFAT partitions in versions prior to (roughly) 17.2. That version is the first release after merging a fix from microsoft/STL#2373, but I'm not certain that version has the fix included. Using `std::filesystem::status` instead of `symlink_status()` seems justified because exFAT paritions don't support symlinks. If other partition types are included in the filter for error code 87, this may need to be revisited.
MSVC's `std::filesystem` has a bug that causes it to fail to retrieve file information on exFAT partitions in versions prior to (roughly) 17.2. That version is the first release after merging a fix from microsoft/STL#2373, but I'm not certain that version has the fix included. Using `std::filesystem::status` instead of `symlink_status()` seems justified because exFAT paritions don't support symlinks. If other partition types are included in the filter for error code 87, this may need to be revisited.
MSVC's `std::filesystem` has a bug that causes it to fail to retrieve file information on exFAT partitions in versions prior to (roughly) 17.2. That version is the first release after merging a fix from microsoft/STL#2373, but I'm not certain that version has the fix included. Using `std::filesystem::status` instead of `symlink_status()` seems justified because exFAT paritions don't support symlinks. If other partition types are included in the filter for error code 87, this may need to be revisited.
MSVC's `std::filesystem` has a bug that causes it to fail to retrieve file information on exFAT partitions in versions prior to (roughly) 17.2. That version is the first release after merging a fix from microsoft/STL#2373, but I'm not certain that version has the fix included. Using `std::filesystem::status` instead of `symlink_status()` seems justified because exFAT paritions don't support symlinks. If other partition types are included in the filter for error code 87, this may need to be revisited.
MSVC's `std::filesystem` has a bug that causes it to fail to retrieve file information on exFAT partitions in versions prior to (roughly) 17.2. That version is the first release after merging a fix from microsoft/STL#2373, but I'm not certain that version has the fix included. Using `std::filesystem::status` instead of `symlink_status()` seems justified because exFAT paritions don't support symlinks. If other partition types are included in the filter for error code 87, this may need to be revisited.
Fixes #233