sapling/eden/fs
Xavier Deguillard b90a9504f0 win: improve getFileSha1 to not trigger a stack overflow
Summary:
In order to build a StringPiece from a C-string, the length of the that
string needs to be known, and a constexp strlen is performed on it. That
strlen is however a recursive one, causing the stack to blow up on big file.

Interestingly enough, this also means that binary files potentially had a
wrong sha1 being computed, potentially causing `hg status` to report some
files as being modified, while they aren't. By switching to using a vector
instead of a string, the intent should of this should be more obvious.

Reviewed By: simpkins

Differential Revision: D21551331

fbshipit-source-id: 2dc1f08d96f49d310593e0e934a03215be2b5cbb
2020-05-13 11:44:30 -07:00
..
benchharness Tidy up license headers 2019-10-11 05:28:23 -07:00
benchmarks move benchmarks/ into eden/fs/ 2020-05-04 11:33:12 -07:00
cli remove version check from redirect fixup 2020-05-12 15:43:31 -07:00
config config: add the TomlConfigTest.cpp to CMake 2020-05-09 08:46:36 -07:00
docs move docs/ into eden/fs/ 2020-05-04 12:34:47 -07:00
fuse disable pthread cancellation on the FuseChannel threads 2020-05-08 20:41:50 -07:00
inodes model: report symlink/executable as regular files on Windows 2020-05-12 08:46:35 -07:00
journal journal: add tests to CMake 2020-05-07 10:07:31 -07:00
model model: report symlink/executable as regular files on Windows 2020-05-12 08:46:35 -07:00
monitor enable log rotation in edenfs_monitor 2020-05-07 20:05:46 -07:00
notifications eden: show desktop notification for blob/tree fetch errors 2020-02-10 08:28:49 -08:00
py work around slightly broken AF_UNIX connect() behavior on Windows 2020-05-05 15:03:57 -07:00
rocksdb Remove dead includes in eden 2019-10-11 16:45:01 -07:00
service mount: enable registerStats for Windows 2020-05-12 13:04:27 -07:00
sqlite silence some msvc warnings from sqlite.{h,cpp} 2020-04-26 21:14:24 -07:00
store model: report symlink/executable as regular files on Windows 2020-05-12 08:46:35 -07:00
takeover add EdenServer recovery step and recover after failed takeover data send handshake 2020-04-07 09:52:21 -07:00
telemetry switch from folly benchmark to google benchmark 2020-04-30 09:36:01 -07:00
testharness inodes: enable RemoveTest for Windows 2020-05-05 18:14:54 -07:00
third-party move third-party/ into eden/fs/ 2020-05-04 11:33:12 -07:00
utils add uptime field to DaemonInfo 2020-05-11 11:42:15 -07:00
win win: improve getFileSha1 to not trigger a stack overflow 2020-05-13 11:44:30 -07:00
CMakeLists.txt Run Eden as a Windows service 2020-05-01 20:00:07 -07:00