From: Junio C Hamano Date: Wed, 18 Apr 2007 19:36:20 GMT Subject: Re: [PATCH] refs.c: add a function to sort a ref list, rather then sorting on add Message-ID: <7vodllfpaj.fsf@assigned-by-dhcp.cox.net> In-Reply-To: Julian Phillips writes: > On Tue, 17 Apr 2007, Junio C Hamano wrote: > ... >> I think we would not call add_ref() to the same list with >> duplicate names, unless (1) filesystem is grossly corrupt, (2) >> somebody added a new ref while we are walking (how does >> readdir() behave in such a case???), or (3) packed-refs file is >> corrupt. > > This combined with the fact that the old code didn't check that the > sha1 was the same suggests to me that this behaviour may actually have > been a subtle bug? Perhaps the best thing to do is die if we find two > entries with the same name when sorting? I am not sure what readdir() does if somebody adds a new ref while we are walking the directory; I am hoping we would not get the same thing in duplicates, but I dunno. I think the most sensible thing to do is to check for duplicates, discarding if the SHA-1 match and otherwise dying.