builtin/am: honor --signoff also when --rebasing
Signoff is handled in parse_mail(), but not in parse_mail_rebasing(), since the latter is only used when git-rebase calls git-am with the --rebasing option, and --signoff is never passed in this case. In order to introduce (in the upcoming commits) support for `git-rebase --signoff`, we must make git-am pay attention to it also in the rebase case. This can be done by moving the conditional addition of the signoff from parse_mail() to the caller am_run(), after either of the parse_mail*() functions were called. Signed-off-by: Giuseppe Bilotta <giuseppe.bilotta@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
Giuseppe Bilotta committed
Apr 15, 2017 at 16:41 UTC
b7cc7051f7f1cf9092fbddc828ff4ec249373046
1 file changed
+3
-3
builtin/am.c
+3
-3
@@ -1321,9 +1321,6 @@ static int parse_mail(struct am_state *state, const char *mail)
1321
strbuf_addbuf(&msg, &mi.log_message);
1322
strbuf_stripspace(&msg, 0);
1323
1324
- if (state->signoff)
1325
- am_signoff(&msg);
1326
-
1324
assert(!state->author_name);
1325
state->author_name = strbuf_detach(&author_name, NULL);
1326
@@ -1848,6 +1845,9 @@ static void am_run(struct am_state *state, int resume)
1845
if (skip)
1846
goto next; /* mail should be skipped */
1847
1848
+ if (state->signoff)
1849
+ am_append_signoff(state);
1850
+
1851
write_author_script(state);
1852
write_commit_msg(state);
1853
}