As some of you might know, I've been working on porting git-daemon to Windows for quite some time now. As it stands now, there's really only one known issue that is blocking on my end here: Something weird happens *sometimes* when upload-pack is exiting, leading to a client dying with a "fatal: read error: Invalid argument\nfatal: early EOF"-error. If I place a sleep(1) at some place after exiting the while(1)-loop in create_pack() in upload-pack.c, the symptom goes away. create_pack() contains some async-code, but this doesn't seem to be triggered in my minimal case at all. I've tried flushing stdout and stderr explicitly, no luck. How often the issue triggers seems to depend on two things, the size of the repo and the connection speed. If I clone from localhost, I can't get it to trigger at all. If the repo is of some size, it triggers rarely. However if I have a repo with only one commit, it seems to trigger every single time for me. I've noticed that one of the last things that happens is a call to poll with nfds=1. This triggers a special case in our poll-emulation on Windows; but removing that special case hasn't given me any positive results. Does anyone have a hunch about what might trigger this issue? -- Erik "kusma" Faye-Lund -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html