On Fri, 2007-12-14 at 11:43 -0800, Junio C Hamano wrote: > Kristian Høgsberg <krh@xxxxxxxxxx> writes: > > > While strace'ing builtin-clone I saw this horror: > > I think the best solution is to just parse up the entire config file > > up front and keep it in a data structure, make the changes and then > > write it all out at the end. > > Yeah, that was what I suggested a few times when other people have done > config writing side, but without successfully getting past their skulls > (it is not Linus's nor my code). It's about time somebody started to > clean up that mess. > > The timing is a bit unfortunate, though. I would have preferred to have > a week or so to cook this in 'next' before merging it part of -rc0. Right, what I was describing above was more of a long term thing. I sent two patches more suitable for 1.5.4 that fixes the double close and the 1-byte writes in a less intrusive way. Except as the Johanneses point out, I can't use the lock as a local variable, but must allocate so the atexit handler doesn't break. If it has to be allocated, the API should help/enforce that. I've sent out a couple of new patches that fixes this. Kristian - 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