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

[PATCH] Improve output of %p and %P format in git-rev-list --pretty=format:

From
Alex Riesen <raa.lkml@gmail.com>
Date
Mar 28, 2007, 20:11 UTC
Message-ID
<20070328201123.GB2588@steel.home>
In-Reply-To
<20070328000828.GA13273@coredump.intra.peff.net>

Remove the terminating space from the space-separated list of parents. Also fix the test t6006: it wrongly assumed that the initial commit has a parent and was not executable.

Signed-off-by: Alex Riesen <raa.lkml@gmail.com>
---

The test even hardcoded parents of the initial commit to the initial commit itself, which does not make any sense at all.

 commit.c                   |    5 +++--
 t/t6006-rev-list-format.sh |    8 ++++----
 2 files changed, 7 insertions(+), 6 deletions(-)
diff --git a/commit.c b/commit.c
index a92958c..94b3713 100644
--- a/commit.c
+++ b/commit.c
@@ -852,13 +852,14 @@ static long format_commit_message(const struct commit *commit,
 	for (i = 0, p = commit->parents;
 			p && i < sizeof(parents) - 1;
 			p = p->next)
-		i += snprintf(parents + i, sizeof(parents) - i - 1, "%s ",
+		i += snprintf(parents + i, sizeof(parents) - i - 1, " %s" + !i,
 			sha1_to_hex(p->item->object.sha1));
 	interp_set_entry(table, IPARENTS, parents);
+	*parents = '\0';
 	for (i = 0, p = commit->parents;
 			p && i < sizeof(parents) - 1;
 			p = p->next)
-		i += snprintf(parents + i, sizeof(parents) - i - 1, "%s ",
+		i += snprintf(parents + i, sizeof(parents) - i - 1, " %s" + !i,
 			find_unique_abbrev(p->item->object.sha1,
 				DEFAULT_ABBREV));
 	interp_set_entry(table, IPARENTS_ABBREV, parents);
diff --git a/t/t6006-rev-list-format.sh b/t/t6006-rev-list-format.sh
index cf096c3..ce9c7dc 100644
--- a/t/t6006-rev-list-format.sh
+++ b/t/t6006-rev-list-format.sh
@@ -39,11 +39,11 @@ EOF
 
 test_format parents %P%n%p <<'EOF'
 commit 131a310eb913d107dd3c09a65d1651175898735d
-86c75cfd708a0e5868dc876ed5b8bb66c80b4873 
-86c75cf 
+86c75cfd708a0e5868dc876ed5b8bb66c80b4873
+86c75cf
 commit 86c75cfd708a0e5868dc876ed5b8bb66c80b4873
-86c75cf 
-86c75cf 
+
+
 EOF
 
 # we don't test relative here
-- 
1.5.1.rc2.18.g157b4
Previous: Junio C HamanoNext: Jeff King
Message 4 of 5 in “Add some basic tests of rev-list --pretty=format”
  1. Add some basic tests of rev-list --pretty=formatJeff King, Mar 28, 2007
  2. Alex RiesenMar 28, 2007
  3. Fix "--pretty=format:" for parent related items.Junio C Hamano, Mar 28, 2007
  4. Improve output of %p and %P format in git-rev-list --pretty=format:Alex Riesen, Mar 28, 2007
  5. Jeff KingMar 28, 2007

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.