rebase: cleanup reset_head() calls

If ORIG_HEAD is not set by passing RESET_ORIG_HEAD then there is no
need to pass anything for reflog_orig_head. In addition to the callers
fixed in this commit move_to_original_branch() also passes
reflog_orig_head without setting ORIG_HEAD. That caller is mistakenly
passing the message it wants to put in the branch reflog which is not
currently possible so we delay fixing that caller until we can pass
the message as the branch reflog.

A later commit will make it a BUG() to pass reflog_orig_head without
RESET_ORIG_HEAD, that changes cannot be done here as it needs to wait
for move_to_original_branch() to be fixed first.

Signed-off-by: Phillip Wood <phillip.wood@dunelm.org.uk>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
Phillip Wood 2022-01-26 13:05:45 +00:00 committed by Junio C Hamano
parent b7de153bd9
commit ee464c4e37

View File

@ -675,7 +675,7 @@ static int run_am(struct rebase_options *opts)
reset_head(the_repository, &opts->orig_head,
opts->head_name, 0,
"HEAD", NULL, DEFAULT_REFLOG_ACTION);
NULL, NULL, DEFAULT_REFLOG_ACTION);
error(_("\ngit encountered an error while preparing the "
"patches to replay\n"
"these revisions:\n"
@ -1777,7 +1777,7 @@ int cmd_rebase(int argc, const char **argv, const char *prefix)
options.head_name ? options.head_name : "detached HEAD",
oid_to_hex(&options.onto->object.oid));
reset_head(the_repository, NULL, options.head_name,
RESET_HEAD_REFS_ONLY, "HEAD", msg.buf, NULL);
RESET_HEAD_REFS_ONLY, NULL, msg.buf, NULL);
strbuf_release(&msg);
ret = finish_rebase(&options);
goto cleanup;