Hi Eric, On Wed, 17 Aug 2016, Eric Sunshine wrote: > On Wed, Aug 17, 2016 at 8:41 AM, Johannes Schindelin > <johannes.schindelin@xxxxxx> wrote: > > When the index is locked and child processes inherit the handle to > > said lock and the parent process wants to remove the lock before the > > child process exits, on Windows there is a problem: it won't work > > because files cannot be deleted if a process holds a handle on them. > > The symptom: > > > > Rename from 'xxx/.git/index.lock' to 'xxx/.git/index' failed. > > Should I try again? (y/n) > > > > Spawning child processes with bInheritHandles==FALSE would not work > > because no file handles would be inherited, not even the hStdXxx > > handles in STARTUPINFO (stdin/stdout/stderr). > > > > Opening every file with O_NOINHERIT does not work, either, as e.g. > > git-upload-pack expects inherited file handles. > > > > This leaves us with the only way out: creating temp files with the > > O_NOINHERIT flag. This flag is Windows-specific, however. For our > > purposes, it is equivalent our purposes) to O_CLOEXEC (which does not > > s/our purposes)// Thanks! Dscho -- 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