From: Duy Nguyen Date: Thu, 22 Aug 2013 13:45:19 GMT Subject: Re: [PATCH 2/4] index-pack: optionally reject packs with duplicate objects Message-ID: In-Reply-To: <20130821205220.GB28165@sigill.intra.peff.net> On Thu, Aug 22, 2013 at 3:52 AM, Jeff King wrote: > @@ -68,6 +81,16 @@ const char *write_idx_file(const char *index_name, struct pack_idx_entry **objec > else > sorted_by_sha = list = last = NULL; > > + if (opts->duplicates == WRITE_IDX_DUPLICATES_REJECT) { > + struct pack_idx_entry **dup; > + > + dup = find_duplicate(sorted_by_sha, nr_objects, > + sizeof(*sorted_by_sha), sha1_compare); > + if (dup) > + die("pack has duplicate entries for %s", > + sha1_to_hex((*dup)->sha1)); > + } > + > if (opts->flags & WRITE_IDX_VERIFY) { > assert(index_name); > f = sha1fd_check(index_name); write_idx_file() is called after index-pack processes all delta objects. Could resolve_deltas() go cyclic with certain duplicate object setup? -- Duy