Subject: Narrowed the issue to one line

From: Jonathon McKitrick <[email-masked]>
Date: Sun, 20 Aug 2023 13:38:26 +0000

Progress!

This line is the culprit, around 4807:

ptrdiff_t trytry = min (gap_size, READ_BUF_SIZE);

When I replace it with this, from an older version:

ptrdiff_t trytry = min (total - inserted, READ_BUF_SIZE);

The problem disappears.

This change was made to address bug #9800, when inserting large files from /proc.

I don't understand the code well enough to understand why this change is causing the issue I'm seeing,
or if my 'fix' will break something else. I just know it's working for me and doesn't seem to cause issues otherwise.
However, it ignores 'gap_size', so I'm pretty sure that's not the correct way to fix this code.
Maybe it should be used 2 lines below? Again, I don't have the context to do anything but guess.

I'll keep testing locally, but I'd be interested in feedback on this change.

Jonathon McKitrick
--
'My other computer is your Linux box.'