Hi René, On Tue, 6 Sep 2022, René Scharfe wrote: > diff --git a/diff-no-index.c b/diff-no-index.c > index a3683d8a04..35809f26d7 100644 > --- a/diff-no-index.c > +++ b/diff-no-index.c > @@ -245,6 +245,7 @@ int diff_no_index(struct rev_info *revs, > int i, no_index; > int ret = 1; > const char *paths[2]; > + char *to_free[2] = { 0 }; > struct strbuf replacement = STRBUF_INIT; > const char *prefix = revs->prefix; > struct option no_index_options[] = { > @@ -274,7 +275,7 @@ int diff_no_index(struct rev_info *revs, > */ > p = file_from_standard_input; > else if (prefix) > - p = prefix_filename(prefix, p); > + p = to_free[i] = prefix_filename(prefix, p); > paths[i] = p; > } > > @@ -308,6 +309,8 @@ int diff_no_index(struct rev_info *revs, > ret = diff_result_code(&revs->diffopt, 0); > > out: > + for (i = 0; i < 2; i++) > + free(to_free[i]); Heh. That's long-hand for free(to_free[0]); free(to_free[1]); If you do want to have that loop, please replace the hard-coded 2 by `ARRAY_SIZE(to_free)`. Otherwise, both patches look fine to me. Thanks! Dscho > strbuf_release(&replacement); > return ret; > } > -- > 2.37.2 >