use args member of struct child_process
Convert users of struct child_process to using the managed argv_array args instead of providing their own. This shortens the code a bit and ensures that the allocated memory is released automatically after use. Suggested-by: Jeff King <peff@peff.net> Signed-off-by: Rene Scharfe <l.s.r@web.de> Signed-off-by: Junio C Hamano <gitster@pobox.com>
René Scharfe committed
Nov 9, 2014 at 14:49 UTC
a2bae2dce1fc2fe14894d46e01ee093b5704941a
2 files changed
+29
-35
builtin/repack.c
+22
-25
@@ -135,7 +135,6 @@ int cmd_repack(int argc, const char **argv, const char *prefix)
135
};
136
struct child_process cmd = CHILD_PROCESS_INIT;
137
struct string_list_item *item;
138
- struct argv_array cmd_args = ARGV_ARRAY_INIT;
138
struct string_list names = STRING_LIST_INIT_DUP;
139
struct string_list rollback = STRING_LIST_INIT_NODUP;
140
struct string_list existing_packs = STRING_LIST_INIT_DUP;
@@ -202,56 +201,55 @@ int cmd_repack(int argc, const char **argv, const char *prefix)
201
202
sigchain_push_common(remove_pack_on_signal);
203
205
- argv_array_push(&cmd_args, "pack-objects");
206
- argv_array_push(&cmd_args, "--keep-true-parents");
204
+ argv_array_push(&cmd.args, "pack-objects");
205
+ argv_array_push(&cmd.args, "--keep-true-parents");
206
if (!pack_kept_objects)
208
- argv_array_push(&cmd_args, "--honor-pack-keep");
209
- argv_array_push(&cmd_args, "--non-empty");
210
- argv_array_push(&cmd_args, "--all");
211
- argv_array_push(&cmd_args, "--reflog");
212
- argv_array_push(&cmd_args, "--indexed-objects");
207
+ argv_array_push(&cmd.args, "--honor-pack-keep");
208
+ argv_array_push(&cmd.args, "--non-empty");
209
+ argv_array_push(&cmd.args, "--all");
210
+ argv_array_push(&cmd.args, "--reflog");
211
+ argv_array_push(&cmd.args, "--indexed-objects");
212
if (window)
214
- argv_array_pushf(&cmd_args, "--window=%s", window);
213
+ argv_array_pushf(&cmd.args, "--window=%s", window);
214
if (window_memory)
216
- argv_array_pushf(&cmd_args, "--window-memory=%s", window_memory);
215
+ argv_array_pushf(&cmd.args, "--window-memory=%s", window_memory);
216
if (depth)
218
- argv_array_pushf(&cmd_args, "--depth=%s", depth);
217
+ argv_array_pushf(&cmd.args, "--depth=%s", depth);
218
if (max_pack_size)
220
- argv_array_pushf(&cmd_args, "--max-pack-size=%s", max_pack_size);
219
+ argv_array_pushf(&cmd.args, "--max-pack-size=%s", max_pack_size);
220
if (no_reuse_delta)
222
- argv_array_pushf(&cmd_args, "--no-reuse-delta");
221
+ argv_array_pushf(&cmd.args, "--no-reuse-delta");
222
if (no_reuse_object)
224
- argv_array_pushf(&cmd_args, "--no-reuse-object");
223
+ argv_array_pushf(&cmd.args, "--no-reuse-object");
224
if (write_bitmaps)
226
- argv_array_push(&cmd_args, "--write-bitmap-index");
225
+ argv_array_push(&cmd.args, "--write-bitmap-index");
226
227
if (pack_everything & ALL_INTO_ONE) {
228
get_non_kept_pack_filenames(&existing_packs);
229
230
if (existing_packs.nr && delete_redundant) {
231
if (unpack_unreachable)
233
- argv_array_pushf(&cmd_args,
232
+ argv_array_pushf(&cmd.args,
233
"--unpack-unreachable=%s",
234
unpack_unreachable);
235
else if (pack_everything & LOOSEN_UNREACHABLE)
237
- argv_array_push(&cmd_args,
236
+ argv_array_push(&cmd.args,
237
"--unpack-unreachable");
238
}
239
} else {
241
- argv_array_push(&cmd_args, "--unpacked");
242
- argv_array_push(&cmd_args, "--incremental");
240
+ argv_array_push(&cmd.args, "--unpacked");
241
+ argv_array_push(&cmd.args, "--incremental");
242
}
243
244
if (local)
246
- argv_array_push(&cmd_args, "--local");
245
+ argv_array_push(&cmd.args, "--local");
246
if (quiet)
248
- argv_array_push(&cmd_args, "--quiet");
247
+ argv_array_push(&cmd.args, "--quiet");
248
if (delta_base_offset)
250
- argv_array_push(&cmd_args, "--delta-base-offset");
249
+ argv_array_push(&cmd.args, "--delta-base-offset");
250
252
- argv_array_push(&cmd_args, packtmp);
251
+ argv_array_push(&cmd.args, packtmp);
252
254
- cmd.argv = cmd_args.argv;
253
cmd.git_cmd = 1;
254
cmd.out = -1;
255
cmd.no_stdin = 1;
@@ -270,7 +268,6 @@ int cmd_repack(int argc, const char **argv, const char *prefix)
268
ret = finish_command(&cmd);
269
if (ret)
270
return ret;
273
- argv_array_clear(&cmd_args);
271
272
if (!names.nr && !quiet)
273
printf("Nothing new to pack.\n");
wt-status.c
+7
-10
@@ -726,7 +726,6 @@ static void wt_status_print_changed(struct wt_status *s)
726
static void wt_status_print_submodule_summary(struct wt_status *s, int uncommitted)
727
{
728
struct child_process sm_summary = CHILD_PROCESS_INIT;
729
- struct argv_array argv = ARGV_ARRAY_INIT;
729
struct strbuf cmd_stdout = STRBUF_INIT;
730
struct strbuf summary = STRBUF_INIT;
731
char *summary_content;
@@ -735,23 +734,21 @@ static void wt_status_print_submodule_summary(struct wt_status *s, int uncommitt
734
argv_array_pushf(&sm_summary.env_array, "GIT_INDEX_FILE=%s",
735
s->index_file);
736
738
- argv_array_push(&argv, "submodule");
739
- argv_array_push(&argv, "summary");
740
- argv_array_push(&argv, uncommitted ? "--files" : "--cached");
741
- argv_array_push(&argv, "--for-status");
742
- argv_array_push(&argv, "--summary-limit");
743
- argv_array_pushf(&argv, "%d", s->submodule_summary);
737
+ argv_array_push(&sm_summary.args, "submodule");
738
+ argv_array_push(&sm_summary.args, "summary");
739
+ argv_array_push(&sm_summary.args, uncommitted ? "--files" : "--cached");
740
+ argv_array_push(&sm_summary.args, "--for-status");
741
+ argv_array_push(&sm_summary.args, "--summary-limit");
742
+ argv_array_pushf(&sm_summary.args, "%d", s->submodule_summary);
743
if (!uncommitted)
745
- argv_array_push(&argv, s->amend ? "HEAD^" : "HEAD");
744
+ argv_array_push(&sm_summary.args, s->amend ? "HEAD^" : "HEAD");
745
747
- sm_summary.argv = argv.argv;
746
sm_summary.git_cmd = 1;
747
sm_summary.no_stdin = 1;
748
fflush(s->fp);
749
sm_summary.out = -1;
750
751
run_command(&sm_summary);
754
- argv_array_clear(&argv);
752
753
len = strbuf_read(&cmd_stdout, sm_summary.out, 1024);
754