On Thu, Feb 25, 2016 at 7:13 AM, Michael Procter <michael@xxxxxxxxxxxxxx> wrote: > Use the argv_array in the child_process structure, to avoid having to > manually maintain an array size. > > Signed-off-by: Michael Procter <michael@xxxxxxxxxxxxxx> > --- > diff --git 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, ""); > } Not worth a re-roll, but: if (shallow_nr) argv_array_pushv(..., "--shallow-file", "", NULL); would have made it clearer that the two arguments are related (and allowed you to drop the braces). > - 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"); > -- > 2.7.2.368.g02f4152 > > -- > To unsubscribe from this list: send the line "unsubscribe git" in > the body of a message to majordomo@xxxxxxxxxxxxxxx > More majordomo info at http://vger.kernel.org/majordomo-info.html -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html