On Fri, Mar 10, 2023 at 07:52:10AM +0100, Patrick Steinhardt wrote: > Fix this race by registering the lockfile as a tempfile so that it will > automatically be removed at exit or when receiving a signal. Unsurprisingly, this version looks good to me. :) Looks like you adjusted for index_pack_lockfile() returning NULL, which makes sense. > builtin/receive-pack.c | 14 ++++++++++---- > 1 file changed, 10 insertions(+), 4 deletions(-) There's no test here, and I think we _could_ make a reliable one with something like: 1. Have a proc-receive hook that signals via fifo that it's running, then pauses indefinitely. 2. Start a push in the background, then wait on the fifo signal. 3. Kill receive-pack. But it's awfully complicated for little gain. I'm fine with not worrying about it (and I did something similar manually to make to sure it works as we expect). -Peff