On Thu, Aug 22, 2013 at 10:43:05AM -0400, Jeff King wrote: > > write_idx_file() is called after index-pack processes all delta > > objects. Could resolve_deltas() go cyclic with certain duplicate > > object setup? > > Good question. I'm not sure. I'll check it out. I think the answer is "no", based on both reasoning and testing (both of which are included in patches 3-4 of the series below). So here's my re-roll of the series. [1/6]: test-sha1: add a binary output mode New in this iteration; the previous version piped test-sha1 into perl to create the pack trailer, but with this simple change we can drop the perl dependency. [2/6]: sha1-lookup: handle duplicate keys with GIT_USE_LOOKUP Same code as before. I've factored the pack-creation bits from the tests into lib-pack.sh, so they can be reused elsewhere when we want to create bogus packs (and patches 3-4 reuse them here). [3/6]: add tests for indexing packs with delta cycles [4/6]: test index-pack on packs with recoverable delta cycles New tests covering delta cycles. [5/6]: index-pack: optionally reject packs with duplicate objects Similar to before, but I converted the config flag to a simple boolean (since we scrapped the "fix" of the tri-state "allow, reject, fix"). [6/6]: default pack.indexDuplicates to false This flips the safety check on by default everywhere (before, it was left off for index-pack). -Peff -- 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