return NULL;
}
-void pack_geometry_remove_redundant(struct pack_geometry *geometry,
- struct string_list *names,
- struct existing_packs *existing,
- const char *packdir)
+static void remove_redundant_packs(struct packed_git **pack,
+ uint32_t pack_nr,
+ struct string_list *names,
+ struct existing_packs *existing,
+ const char *packdir)
{
const struct git_hash_algo *algop = existing->repo->hash_algo;
struct strbuf buf = STRBUF_INIT;
uint32_t i;
- for (i = 0; i < geometry->split; i++) {
- struct packed_git *p = geometry->pack[i];
+ for (i = 0; i < pack_nr; i++) {
+ struct packed_git *p = pack[i];
if (string_list_has_string(names, hash_to_hex_algop(p->hash,
algop)))
continue;
strbuf_release(&buf);
}
+void pack_geometry_remove_redundant(struct pack_geometry *geometry,
+ struct string_list *names,
+ struct existing_packs *existing,
+ const char *packdir)
+{
+ remove_redundant_packs(geometry->pack, geometry->split,
+ names, existing, packdir);
+}
+
void pack_geometry_release(struct pack_geometry *geometry)
{
if (!geometry)