From: Nicolas Pitre Date: Wed, 19 Nov 2008 14:42:43 GMT Subject: Re: [PATCH] Fix handle leak in builtin-pack-objects Message-ID: In-Reply-To: <49241AEF.1080808@viscovery.net> On Wed, 19 Nov 2008, Johannes Sixt wrote: > Alex Riesen schrieb: > > 2008/11/19 Nicolas Pitre : > >> On Wed, 19 Nov 2008, Johannes Sixt wrote: > >>> The work-around is to write the repacked objects to a file of a different > >>> name, and replace the original after git-pack-objects has terminated. > >>> > >>> Signed-off-by: Johannes Sixt > >> Acked-by: Nicolas Pitre > > > > Are you sure? Will it work in a real repository? Were noone does > > rename the previous pack files into packtmp-something? > > Oh, the patch only works around the failure in the test case. In a real > repository there is usually no problem because the destination pack file > does not exist. > > The unusual case is where you do this: > > $ git rev-list -10 HEAD | git pack-objects foobar > > twice in a row: In this case the second invocation fails on Windows > because the destination pack file already exists *and* is open. But not > even git-repack does this even if it is called twice. OTOH, the test case > *does* exactly this. OK.... Well, despite my earlier assertion, I think the above should be a valid operation. I'm looking at it now. I'm therefore revoking my earlier ACK as well (better keep that test case alive). Nicolas