diff options
author | Michael Procter <michael@procter.org.uk> | 2016-02-25 12:13:26 +0000 |
---|---|---|
committer | Junio C Hamano <gitster@pobox.com> | 2016-02-25 14:20:25 -0800 |
commit | 65a3629ea3fa91fbf4c434bf25d84ce163aa2360 (patch) | |
tree | 6ca369e83152ab2e0996cb479c61ed07f070c2ed /upload-pack.c | |
parent | 326e5bc91eecf73234ead29636207bc516573e79 (diff) | |
download | git-65a3629ea3fa91fbf4c434bf25d84ce163aa2360.tar.gz |
upload-pack: use argv_array for pack_objectsmp/upload-pack-use-embedded-args
Use the argv_array in the child_process structure, to avoid having to
manually maintain an array size.
Signed-off-by: Michael Procter <michael@procter.org.uk>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 'upload-pack.c')
-rw-r--r-- | upload-pack.c | 25 |
1 files changed, 11 insertions, 14 deletions
diff --git a/upload-pack.c b/upload-pack.c index b3f6653ffd..dc802a07c2 100644 --- a/upload-pack.c +++ b/upload-pack.c @@ -90,35 +90,32 @@ static void create_pack_file(void) "corruption on the remote side."; int buffered = -1; ssize_t sz; - const char *argv[13]; - int i, arg = 0; + int i; FILE *pipe_fd; if (shallow_nr) { - argv[arg++] = "--shallow-file"; - argv[arg++] = ""; + argv_array_push(&pack_objects.args, "--shallow-file"); + argv_array_push(&pack_objects.args, ""); } - argv[arg++] = "pack-objects"; - argv[arg++] = "--revs"; + argv_array_push(&pack_objects.args, "pack-objects"); + argv_array_push(&pack_objects.args, "--revs"); if (use_thin_pack) - argv[arg++] = "--thin"; + argv_array_push(&pack_objects.args, "--thin"); - argv[arg++] = "--stdout"; + argv_array_push(&pack_objects.args, "--stdout"); if (shallow_nr) - argv[arg++] = "--shallow"; + argv_array_push(&pack_objects.args, "--shallow"); if (!no_progress) - argv[arg++] = "--progress"; + argv_array_push(&pack_objects.args, "--progress"); if (use_ofs_delta) - argv[arg++] = "--delta-base-offset"; + argv_array_push(&pack_objects.args, "--delta-base-offset"); if (use_include_tag) - argv[arg++] = "--include-tag"; - argv[arg++] = NULL; + argv_array_push(&pack_objects.args, "--include-tag"); pack_objects.in = -1; pack_objects.out = -1; pack_objects.err = -1; pack_objects.git_cmd = 1; - pack_objects.argv = argv; if (start_command(&pack_objects)) die("git upload-pack: unable to fork git-pack-objects"); |