Hi Stefan,
On Wed, 30 May 2018, Stefan Beller wrote:
> Signed-off-by: Stefan Beller
> ---
>
> This was a deliberate oversight in f241ff0d0a9 (prepare the builtins for a
> libified merge_recursive(), 2016-07-26)
No, it was not deliberate. It was inadvertent, most likely ;-)
> sequencer.c | 4 +++-
> 1 file changed, 3 insertions(+), 1 deletion(-)
>
> diff --git a/sequencer.c b/sequencer.c
> index 72b4d8ecae3..5c93586cc1c 100644
> --- a/sequencer.c
> +++ b/sequencer.c
> @@ -1771,8 +1771,10 @@ static int do_pick_commit(enum todo_command command,
> struct commit *commit,
> else if (!opts->strategy || !strcmp(opts->strategy, "recursive") ||
> command == TODO_REVERT) {
> res = do_recursive_merge(base, next, base_label, next_label,
>, , opts);
> - if (res < 0)
> + if (res < 0) {
> + free(author);
> return res;
Why not `goto leave;` instead? I wonder what is happening to the commit
message: can we be certain at this point that it was not set yet? And
also: should we call `update_abort_safety_file()`?
Ciao,
Dscho
> + }
> res |= write_message(msgbuf.buf, msgbuf.len,
>git_path_merge_msg(), 0);
> } else {
> --
> 2.17.1.1185.g55be947832-goog
>
>