summaryrefslogtreecommitdiff
path: root/sequencer.c
diff options
context:
space:
mode:
authorPhillip Wood <phillip.wood@dunelm.org.uk>2021-11-02 21:30:51 (GMT)
committerJunio C Hamano <gitster@pobox.com>2021-11-03 17:44:45 (GMT)
commit9d6b9df128f842d2945e20e0760489ec6f3d2c0c (patch)
tree4a2031b1de1a211e15294f03d3b389eb91954f95 /sequencer.c
parentf2563c9ef3c028b5d4165df02fdfc0fcd613102d (diff)
downloadgit-9d6b9df128f842d2945e20e0760489ec6f3d2c0c.zip
git-9d6b9df128f842d2945e20e0760489ec6f3d2c0c.tar.gz
git-9d6b9df128f842d2945e20e0760489ec6f3d2c0c.tar.bz2
rebase -i: fix rewording with --committer-date-is-author-date
baf8ec8d3a (rebase -r: don't write .git/MERGE_MSG when fast-forwarding, 2021-08-20) stopped reading the author script in run_git_commit() when rewording a commit. This is normally safe because "git commit --amend" preserves the authorship. However if the user passes "--committer-date-is-author-date" then we need to read the author date from the author script when rewording. Fix this regression by tightening the check for when it is safe to skip reading the author script. Reported-by: Jonas Kittner <jonas.kittner@ruhr-uni-bochum.de> Signed-off-by: Phillip Wood <phillip.wood@dunelm.org.uk> Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 'sequencer.c')
-rw-r--r--sequencer.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/sequencer.c b/sequencer.c
index a19980f..6592eff 100644
--- a/sequencer.c
+++ b/sequencer.c
@@ -983,7 +983,9 @@ static int run_git_commit(const char *defmsg,
cmd.git_cmd = 1;
- if (is_rebase_i(opts) && !(!defmsg && (flags & AMEND_MSG)) &&
+ if (is_rebase_i(opts) &&
+ ((opts->committer_date_is_author_date && !opts->ignore_date) ||
+ !(!defmsg && (flags & AMEND_MSG))) &&
read_env_script(&cmd.env_array)) {
const char *gpg_opt = gpg_sign_opt_quoted(opts);