Johannes Schindelin <johannes.schindelin@xxxxxx> writes: > To be truly useful, the sequencer should never die() but always return > an error. > > Signed-off-by: Johannes Schindelin <johannes.schindelin@xxxxxx> > --- Instead of dying there, you let the caller high up in the callchain to notice the error and handle it (by dying). The eventual caller of do_pick_commit() is sequencer_pick_revisions(), which already relays an reported error from its helper functions (including this one), and both of its two callers know how to react to a negative return correctly. So this makes do_pick_commit() callable from new callers that want it not to die, without changing the external behaviour of anything existing. Good. > sequencer.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/sequencer.c b/sequencer.c > index 0c8c955..6ac2187 100644 > --- a/sequencer.c > +++ b/sequencer.c > @@ -464,7 +464,7 @@ static int do_pick_commit(struct commit *commit, struct replay_opts *opts) > * to work on. > */ > if (write_cache_as_tree(head, 0, NULL)) > - die (_("Your index file is unmerged.")); > + return error (_("Your index file is unmerged.")); While you are touching the line, it is a good idea to correct an obvious style error like this one. "Do one thing and one thing well in a commit" is a good discipline, but it is absurd to take it to the extreme. > } else { > unborn = get_sha1("HEAD", head); > if (unborn) -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html