Hi Junio On Mon, 15 Jul 2019 10:57:18 -0700 Junio C Hamano <gitster@xxxxxxxxx> wrote: > > Rohit Ashiwal <rohit.ashiwal265@xxxxxxxxx> writes: > > > + if (opts->ignore_whitespace) { > > + struct strbuf buf = STRBUF_INIT; > > + > > + if (opts->strategy_opts) > > + strbuf_addstr(&buf, opts->strategy_opts); > > + > > + strbuf_addstr(&buf, " --ignore-space-change"); > > + free(opts->strategy_opts); > > Is this call to free() safe? Yes, as far as I can tell. Since up till now, `strategy_opts` is either "NULL" or xstrdup()'d string. There is no double free involved. > > + opts->strategy_opts = strbuf_detach(&buf, NULL); > > + } > > + > > @@ -1821,6 +1836,9 @@ int cmd_rebase(int argc, const char **argv, const char *prefix) > > } > > > > if (options.rebase_merges) { > > + if (options.ignore_whitespace) > > + die(_("cannot combine '--rebase-merges' with " > > + "'--ignore-whitespace'")); > > Hmph, this is unfortunate. The patch is not making things worse, though. Actually, there is no need for --rebase-merges and --ignore-whitespace to be "incompatible". My mentors also agree on this one. Making them work in harmony will be handled in another patch series. Best Rohit