sequencer: lib'ify do_recursive_merge()
authorJohannes Schindelin <johannes.schindelin@gmx.de>
Fri, 9 Sep 2016 14:37:10 +0000 (16:37 +0200)
committerJunio C Hamano <gitster@pobox.com>
Fri, 9 Sep 2016 18:24:52 +0000 (11:24 -0700)
Instead of dying there, let the caller high up in the callchain
notice the error and handle it (by dying, still).

The only caller of do_recursive_merge(), do_pick_commit() already
checks the return value and passes it on to its callers, so its caller
must be already prepared to handle error returns, and with this step,
we make it notice an error return from this function.

So this is a safe conversion to make do_recursive_merge() callable
from new callers that want it not to die, without changing the
external behaviour of anything existing.

Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
sequencer.c
index ec85fe77b48606026640d2dd75db4a6347111b8b..eb700913a19b36feda9b0ccfd348e7765b465a1f 100644 (file)
@@ -303,7 +303,8 @@ static int do_recursive_merge(struct commit *base, struct commit *next,
        if (active_cache_changed &&
            write_locked_index(&the_index, &index_lock, COMMIT_LOCK))
                /* TRANSLATORS: %s will be "revert" or "cherry-pick" */
-               die(_("%s: Unable to write new index file"), action_name(opts));
+               return error(_("%s: Unable to write new index file"),
+                       action_name(opts));
        rollback_lock_file(&index_lock);
 
        if (opts->signoff)