git/list[1] front-page[2] threads[3] people[4] search[5] about
 

[PATCH 3/3] rebase: fix broken email with --committer-date-is-author-date

From
Jeff King <peff@peff.net>
Date
Oct 23, 2020, 07:10 UTC
Message-ID
<20201023071015.GC2913115@coredump.intra.peff.net>
In-Reply-To
<20201023070747.GA2198273@coredump.intra.peff.net>

Commit 7573cec52c (rebase -i: support --committer-date-is-author-date, 2020-08-17) copied the committer ident-parsing code from builtin/am.c. And in doing so, it copied a bug in which we always set the email to an empty string. We fixed the version in git-am in the previous commit; this commit fixes the copied code.

Reported-by: VenomVendor <info@venomvendor.com>
Signed-off-by: Jeff King <peff@peff.net>
---
 sequencer.c                    | 2 +-
 t/t3436-rebase-more-options.sh | 8 ++++----
 2 files changed, 5 insertions(+), 5 deletions(-)
diff --git a/sequencer.c b/sequencer.c
index 00acb12496..d76cbded00 100644
--- a/sequencer.c
+++ b/sequencer.c
@@ -4478,7 +4478,7 @@ static int init_committer(struct replay_opts *opts)
 	opts->committer_name =
 		xmemdupz(id.name_begin, id.name_end - id.name_begin);
 	opts->committer_email =
-		xmemdupz(id.mail_begin, id.mail_end - id.mail_end);
+		xmemdupz(id.mail_begin, id.mail_end - id.mail_begin);
 
 	return 0;
 }
diff --git a/t/t3436-rebase-more-options.sh b/t/t3436-rebase-more-options.sh
index 3fda2235bd..eaaf4c8d1d 100755
--- a/t/t3436-rebase-more-options.sh
+++ b/t/t3436-rebase-more-options.sh
@@ -76,20 +76,20 @@ test_expect_success '--committer-date-is-author-date works with apply backend' '
 	test_ctime_is_atime -1
 '
 
-test_expect_failure '--committer-date-is-author-date works with merge backend' '
+test_expect_success '--committer-date-is-author-date works with merge backend' '
 	GIT_AUTHOR_DATE="@1234 +0300" git commit --amend --reset-author &&
 	git rebase -m --committer-date-is-author-date HEAD^ &&
 	test_ctime_is_atime -1
 '
 
-test_expect_failure '--committer-date-is-author-date works with rebase -r' '
+test_expect_success '--committer-date-is-author-date works with rebase -r' '
 	git checkout side &&
 	GIT_AUTHOR_DATE="@1234 +0300" git merge --no-ff commit3 &&
 	git rebase -r --root --committer-date-is-author-date &&
 	test_ctime_is_atime
 '
 
-test_expect_failure '--committer-date-is-author-date works when forking merge' '
+test_expect_success '--committer-date-is-author-date works when forking merge' '
 	git checkout side &&
 	GIT_AUTHOR_DATE="@1234 +0300" git merge --no-ff commit3 &&
 	PATH="./test-bin:$PATH" git rebase -r --root --strategy=test \
@@ -145,7 +145,7 @@ test_expect_success '--reset-author-date works with rebase -r' '
 	test_atime_is_ignored
 '
 
-test_expect_failure '--reset-author-date with --committer-date-is-author-date works' '
+test_expect_success '--reset-author-date with --committer-date-is-author-date works' '
 	test_must_fail git rebase -m --committer-date-is-author-date \
 		--reset-author-date --onto commit2^^ commit2^ commit3 &&
 	git checkout --theirs foo &&
-- 
2.29.0.583.g8e3ac41d8f
Previous: Jeff KingNext: Junio C Hamano
Message 14 of 17 in “committer-date-is-author-date flag removes email in "Commit"”
  1. VenomVendorOct 23, 2020
  2. Jeff KingOct 23, 2020
  3. 1/3 t3436: check --committer-date-is-author-date result more carefullyJeff King, Oct 23, 2020
  4. Phillip WoodOct 23, 2020
  5. 2/3 am: fix broken email with --committer-date-is-author-dateJeff King, Oct 23, 2020
  6. 4/3 am, sequencer: stop parsing our own committer identJeff King, Oct 23, 2020
  7. Jeff KingOct 23, 2020
  8. Taylor BlauOct 23, 2020
  9. Johannes SchindelinOct 26, 2020
  10. Jeff KingOct 27, 2020
  11. Phillip WoodOct 23, 2020
  12. Junio C HamanoOct 26, 2020
  13. Jeff KingOct 27, 2020
  14. 3/3 rebase: fix broken email with --committer-date-is-author-dateJeff King, Oct 23, 2020
  15. Junio C HamanoOct 23, 2020
  16. Phillip WoodOct 23, 2020
  17. Junio C HamanoOct 23, 2020

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.