aboutsummaryrefslogtreecommitdiffstats
path: root/bundle.c
diff options
context:
space:
mode:
authorJunio C Hamano <gitster@pobox.com>2021-09-20 15:20:42 -0700
committerJunio C Hamano <gitster@pobox.com>2021-09-20 15:20:42 -0700
commit67fc02be54bc8f5e8abf381456f297e32440b88a (patch)
tree8044c27a6429fdbddc466df039ac9eb9efc7de04 /bundle.c
parenta1af5333234b42e9e44729280a0e92b989bd865d (diff)
parentd941cc4c342f4feca6be2a410ac6dc56908880ec (diff)
downloadgit-67fc02be54bc8f5e8abf381456f297e32440b88a.tar.gz
Merge branch 'ab/unbundle-progress'
Add progress display to "git bundle unbundle". * ab/unbundle-progress: bundle: show progress on "unbundle" index-pack: add --progress-title option bundle API: change "flags" to be "extra_index_pack_args" bundle API: start writing API documentation
Diffstat (limited to 'bundle.c')
-rw-r--r--bundle.c12
1 files changed, 6 insertions, 6 deletions
diff --git a/bundle.c b/bundle.c
index ab63f40226..a0bb687b0f 100644
--- a/bundle.c
+++ b/bundle.c
@@ -569,18 +569,18 @@ err:
}
int unbundle(struct repository *r, struct bundle_header *header,
- int bundle_fd, int flags)
+ int bundle_fd, struct strvec *extra_index_pack_args)
{
- const char *argv_index_pack[] = {"index-pack",
- "--fix-thin", "--stdin", NULL, NULL};
struct child_process ip = CHILD_PROCESS_INIT;
+ strvec_pushl(&ip.args, "index-pack", "--fix-thin", "--stdin", NULL);
- if (flags & BUNDLE_VERBOSE)
- argv_index_pack[3] = "-v";
+ if (extra_index_pack_args) {
+ strvec_pushv(&ip.args, extra_index_pack_args->v);
+ strvec_clear(extra_index_pack_args);
+ }
if (verify_bundle(r, header, 0))
return -1;
- ip.argv = argv_index_pack;
ip.in = bundle_fd;
ip.no_stdout = 1;
ip.git_cmd = 1;