]> git.ipfire.org Git - thirdparty/git.git/blobdiff - bundle.c
bundle API: change "flags" to be "extra_index_pack_args"
[thirdparty/git.git] / bundle.c
index ab63f4022616ba85a81fd2d96ff016fe96224fc4..a0bb687b0f4ea30d44883dcb9d4de5bf1e5963ea 100644 (file)
--- 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;