Neither the "processes" nor "max_processes" members ever change after their initialization, and they're always equivalent, but some existing code used "pp->max_processes" when we were already passing the "opts" to the function, let's use the "opts" directly instead. Signed-off-by: Ævar Arnfjörð Bjarmason <avarab@xxxxxxxxx> --- run-command.c | 16 +++++++++------- 1 file changed, 9 insertions(+), 7 deletions(-) diff --git a/run-command.c b/run-command.c index d07ee759b34..b19b62749e0 100644 --- a/run-command.c +++ b/run-command.c @@ -1597,10 +1597,10 @@ static int pp_start_one(struct parallel_processes *pp, size_t i; int code; - for (i = 0; i < pp->max_processes; i++) + for (i = 0; i < opts->processes; i++) if (pp->children[i].state == GIT_CP_FREE) break; - if (i == pp->max_processes) + if (i == opts->processes) BUG("bookkeeping is hard"); code = opts->get_next_task(&pp->children[i].process, @@ -1685,14 +1685,14 @@ static int pp_collect_finished(struct parallel_processes *pp, const struct run_process_parallel_opts *opts) { int code; - size_t i, n = pp->max_processes; + size_t i; int result = 0; while (pp->nr_processes > 0) { - for (i = 0; i < pp->max_processes; i++) + for (i = 0; i < opts->processes; i++) if (pp->children[i].state == GIT_CP_WAIT_CLEANUP) break; - if (i == pp->max_processes) + if (i == opts->processes) break; code = finish_command(&pp->children[i].process); @@ -1721,6 +1721,8 @@ static int pp_collect_finished(struct parallel_processes *pp, strbuf_addbuf(&pp->buffered_output, &pp->children[i].err); strbuf_reset(&pp->children[i].err); } else { + const size_t n = opts->processes; + strbuf_write(&pp->children[i].err, stderr); strbuf_reset(&pp->children[i].err); @@ -1767,7 +1769,7 @@ void run_processes_parallel(const struct run_process_parallel_opts *opts) while (1) { for (int i = 0; i < spawn_cap && !pp.shutdown && - pp.nr_processes < pp.max_processes; + pp.nr_processes < opts->processes; i++) { code = pp_start_one(&pp, opts); if (!code) @@ -1781,7 +1783,7 @@ void run_processes_parallel(const struct run_process_parallel_opts *opts) if (!pp.nr_processes) break; if (opts->ungroup) { - for (size_t i = 0; i < pp.max_processes; i++) + for (size_t i = 0; i < opts->processes; i++) pp.children[i].state = GIT_CP_WAIT_CLEANUP; } else { pp_buffer_stderr(&pp, output_timeout); -- 2.38.0.971.ge79ff6d20e7