Comment 4 for bug 887638

Revision history for this message
Brian Fraser (fraserbn) wrote :

While I wasn't able to reproduce this with a real world test case, I'm pretty sure I nailed down the cause: The printf format %d, which we use for the at byte output, is documented to return whatever the underlaying C implementation would return, so for a large enough index on a 32-bit machine, the values would wrap around.
The other possible cause of breakage would be tell() misbehaving on a large file, but I have no clue how to test that, and there's few chances of a workaround in any case; If someone does manage to reproduce this even with the fix in the attached branch, please create a new bug report!