On Tue, Feb 9, 2021 at 6:35 PM Junio C Hamano <gitster@xxxxxxxxx> wrote: > > Matheus Tavares <matheus.bernardino@xxxxxx> writes: > > > if (CHECKOUT_ALL == checkout_stage) { > > - for (i = 1; i < 4; i++) { > > - if (i > 1) > > - putchar(' '); > > - if (topath[i][0]) > > - fputs(topath[i], stdout); > > - else > > - putchar('.'); > > + for (i = 1; i < 4; i++) > > + if (topath[i][0]) { > > + have_tempname = 1; > > + break; > > + } > > + > > + if (have_tempname) { > > + for (i = 1; i < 4; i++) { > > + if (i > 1) > > + putchar(' '); > > + if (topath[i][0]) > > + fputs(topath[i], stdout); > > + else > > + putchar('.'); > > + } > > } > > - } else > > + } else if (topath[checkout_stage][0]) { > > + have_tempname = 1; > > fputs(topath[checkout_stage], stdout); > > + } > > > > - putchar('\t'); > > - write_name_quoted_relative(name, prefix, stdout, > > - nul_term_line ? '\0' : '\n'); > > + if (have_tempname) { > > + putchar('\t'); > > + write_name_quoted_relative(name, prefix, stdout, > > + nul_term_line ? '\0' : '\n'); > > > > - for (i = 0; i < 4; i++) { > > - topath[i][0] = 0; > > + for (i = 0; i < 4; i++) { > > + topath[i][0] = 0; > > + } > > } > > Hmph, is topath[][] array used after this function gets called and > in what way? Whether have_tempname is true or not, wouldn't we want > to clear it? Yeah, topath[][] can be reused in the next checkout_entry() call. But if have_tempname is false, the positions that are going to be used again (either checkout_stage or 1, 2, and 3, if checkout_stage == CHECKOUT_ALL) will be already empty. So I think we only need to clear topath[][] when have_tempname is false.