"Kyle Lippincott via GitGitGadget" <gitgitgadget@xxxxxxxxx> writes: > I'm attempting to get the git test suite running automatically during our > weekly import. I have this mostly working, including with Address Sanitizer > and Memory Sanitizer, but ran into a few issues: > > * several tests were failing due to strbuf_getcwd not clearing errno on > success after it internally looped due to the path being >128 bytes. This > is resolved in depth; though either one of the commits alone would > resolve our issues: > * modify locations that call strtoX and check for ERANGE to set errno = > 0; prior to calling the conversion function. This is the typical way > that these functions are invoked, and may indicate that we want > compatibility helpers in git-compat-util.h to ensure that this happens > correctly (and add these functions to the banned list). > * have strbuf_getcwd set errno = 0; prior to a successful exit. This > isn't very common for most functions in the codebase, but some other > examples of this were found. > * t6421-merge-partial-clone.sh had >10% flakiness. This is due to our build > system using paths that contain a 64-hex-char hash, which had a 12.5% > chance of containing the substring d0. > > Kyle Lippincott (2): > set errno=0 before strtoX calls > t6421: fix test to work when repo dir contains d0 Both patches make perfect sense to me. Thanks.