summaryrefslogtreecommitdiffstats
path: root/bundle.c
diff options
context:
space:
mode:
authorJunio C Hamano <gitster@pobox.com>2024-07-08 23:53:11 +0200
committerJunio C Hamano <gitster@pobox.com>2024-07-08 23:53:11 +0200
commit125e38947087906be17fb4e237fc09764df97c65 (patch)
treed3a5a64bacceb6485f186f99048cce117de76dbc /bundle.c
parentMerge branch 'ps/leakfixes-more' (diff)
parentunbundle: extend object verification for fetches (diff)
downloadgit-125e38947087906be17fb4e237fc09764df97c65.tar.xz
git-125e38947087906be17fb4e237fc09764df97c65.zip
Merge branch 'xx/bundie-uri-fixes'
When bundleURI interface fetches multiple bundles, Git failed to take full advantage of all bundles and ended up slurping duplicated objects. * xx/bundie-uri-fixes: unbundle: extend object verification for fetches fetch-pack: expose fsckObjects configuration logic bundle-uri: verify oid before writing refs
Diffstat (limited to 'bundle.c')
-rw-r--r--bundle.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/bundle.c b/bundle.c
index 8bf1e6f013..ce164c37bc 100644
--- a/bundle.c
+++ b/bundle.c
@@ -636,6 +636,9 @@ int unbundle(struct repository *r, struct bundle_header *header,
if (header->filter.choice)
strvec_push(&ip.args, "--promisor=from-bundle");
+ if (flags & VERIFY_BUNDLE_FSCK)
+ strvec_push(&ip.args, "--fsck-objects");
+
if (extra_index_pack_args) {
strvec_pushv(&ip.args, extra_index_pack_args->v);
strvec_clear(extra_index_pack_args);