sapling/eden/fs/inodes
Xavier Deguillard 0273817488 win: simplify path management
Summary:
The StringConv.h header contains many functions to convert from Windows paths
to Eden's path (and vice versa) to workaround the fact that Eden's path don't
support wide strings that Windows uses. Let's simply add support for these wide
strings in PathFuncs so we can greatly simplify all the call sites. Instead of
calling "edenToWinName(winstr)", "PathComponent(winstr)" is both more
descriptive and more idiomatic.

To be fair, I'm not entirely a fan of the approach taken in this diff, as this
adds Windows specific code to PathFuncs.h, but I feel that the benefit is too
big to not do that.

Reviewed By: chadaustin

Differential Revision: D23004523

fbshipit-source-id: 3a1507e398a66909773251907db01e06603b91dd
2020-08-10 08:53:13 -07:00
..
overlay Migrate to field_ref Thrift API 2020-07-21 11:23:35 -07:00
sqliteoverlay sqliteoverlay: properly mark it initialized 2020-08-04 12:05:43 -07:00
test simplify BufVec (for now) 2020-08-03 11:16:06 -07:00
CacheHint.h Tidy up license headers 2019-10-11 05:28:23 -07:00
CheckoutAction.cpp add an ObjectFetchContext interface 2020-02-05 13:15:01 -08:00
CheckoutAction.h make unlink and rmdir explicit about kernel cache invalidation 2020-07-28 14:47:40 -07:00
CheckoutContext.cpp logging for thrift object fetch: checkout 2020-07-26 23:09:40 -07:00
CheckoutContext.h logging for thrift object fetch: checkout 2020-07-26 23:09:40 -07:00
CMakeLists.txt win: remove DirList code 2020-07-28 11:52:54 -07:00
DeferredDiffEntry.cpp add an ObjectFetchContext interface 2020-02-05 13:15:01 -08:00
DeferredDiffEntry.h add an ObjectFetchContext interface 2020-02-05 13:15:01 -08:00
DirEntry.cpp Add mode_t size in DirEntry 2020-03-10 12:27:50 -07:00
DirEntry.h eden: make bitfield usage in DirEntry.h more portable 2020-03-20 10:56:07 -07:00
EdenDispatcher.cpp make rename explicit about kernel cache invalidation 2020-07-28 14:47:40 -07:00
EdenDispatcher.h adding ObjectFetchContext to readdir 2020-07-02 12:00:45 -07:00
EdenMount.cpp inodes: invalidate more on Windows 2020-08-03 11:26:31 -07:00
EdenMount.h win: make getFileData more Future friendly 2020-07-27 08:51:43 -07:00
EdenMountError.h Tidy up license headers 2019-10-11 05:28:23 -07:00
FileInode.cpp win: compute sha1 in constant memory 2020-08-04 23:00:11 -07:00
FileInode.h simplify BufVec (for now) 2020-08-03 11:16:06 -07:00
GlobNode.cpp collectX to collectUnsafe 2020-03-10 11:36:09 -07:00
GlobNode.h use enumValue instead of static_cast<int> 2020-04-28 18:59:34 -07:00
InodeBase.cpp start to accept ObjectFetchContext to InodeBase::stat() 2020-06-18 10:40:41 -07:00
InodeBase.h start to accept ObjectFetchContext to InodeBase::stat() 2020-06-18 10:40:41 -07:00
InodeError.cpp Make errnoStr return std::string instead of fbstring 2020-03-10 10:50:44 -07:00
InodeError.h Tidy up license headers 2019-10-11 05:28:23 -07:00
InodeLoader.h Tidy up license headers 2019-10-11 05:28:23 -07:00
InodeMap.cpp Migrate to field_ref Thrift API 2020-07-21 11:23:35 -07:00
InodeMap.h mount: unify EdenMount::initialize 2020-05-15 13:14:55 -07:00
InodeMetadata.cpp Tidy up license headers 2019-10-11 05:28:23 -07:00
InodeMetadata.h Tidy up license headers 2019-10-11 05:28:23 -07:00
InodePtr-defs.h Tidy up license headers 2019-10-11 05:28:23 -07:00
InodePtr.cpp Tidy up license headers 2019-10-11 05:28:23 -07:00
InodePtr.h Tidy up license headers 2019-10-11 05:28:23 -07:00
InodePtrFwd.h Tidy up license headers 2019-10-11 05:28:23 -07:00
InodeTable.h make deleted default constructors explicit 2020-04-14 12:47:03 -07:00
InodeTimestamps.cpp Inode support on Windows 2020-04-01 14:53:30 -07:00
InodeTimestamps.h Inode support on Windows 2020-04-01 14:53:30 -07:00
Overlay.cpp win: simplify path management 2020-08-10 08:53:13 -07:00
Overlay.h using ProgressCallback type for simplification to print fsck messages 2020-07-09 11:13:18 -07:00
OverlayFile.cpp support closing the Overlay class even if it is still in use 2019-11-11 10:56:15 -08:00
OverlayFile.h fix flakiness in RawOverlayTest.closed_overlay_stress_test 2020-01-27 18:17:01 -08:00
OverlayFileAccess.cpp refactor OverlayFileAccess errors 2019-11-06 18:24:58 -08:00
OverlayFileAccess.h refactor OverlayFileAccess errors 2019-11-06 18:24:58 -08:00
ParentInodeInfo.h Tidy up license headers 2019-10-11 05:28:23 -07:00
ServerState.cpp eden: fix Windows build 2020-05-04 11:53:33 -07:00
ServerState.h eden: fix Windows build 2020-05-04 11:53:33 -07:00
TreeInode.cpp win: simplify path management 2020-08-10 08:53:13 -07:00
TreeInode.h inodes: invalidate more on Windows 2020-08-03 11:26:31 -07:00
TreePrefetchLease.cpp limit the number of tree prefetch operations that can run in parallel 2019-12-20 16:14:19 -08:00
TreePrefetchLease.h make FuseRequest high priority & TreePrefetchLease low priority 2020-07-02 12:00:45 -07:00