ERANGE strikes again: RFH #498
Closed
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
I have to build with SNPRINTF_RETURNS_BOGUS. We know already that compat/snprintf overwrites errno with ERANGE in the case where a too small buffer is passed to the function.
I observe failures such as this one in t0410-partial-clone.sh:
++ git -C repo fsck
Checking object directories: 100% (256/256), done.
Checking objects: 100% (1/1), done.
fatal: failed to read object 3836707...snip...6591523: Result too large
The messages is from read_object_file_extended() in sha1-file.c.
It looks like we call into strbuf after a lower-level error return,
but before the error is checked. Does someone know where this
could happen?
The reason I'm asking is that today's tool chain is sufficiently broken for me
on Windows that I can't use the debugger. A hint where to start debugging
with fprintf would be helpful.