Subject: [PATCH] Skip excessive blank lines before commit body

From: Lars Hjemli <[email-masked]>
Date: Wed, 3 Jan 2007 14:34:13 +0100

This modifies pretty_print_commit() to make the output of git-rev-list and
friends a bit more predictable.

A commit body starting with blank lines might be unheard-of, but still possible
to create using git-commit-tree (so is bound to appear somewhere, sometime).

Signed-off-by: Lars Hjemli <[email-masked]>
---
 commit.c |    5 ++++-
 1 files changed, 4 insertions(+), 1 deletions(-)

diff --git a/commit.c b/commit.c
index 544e426..2a58175 100644
--- a/commit.c
+++ b/commit.c
@@ -703,7 +703,7 @@ unsigned long pretty_print_commit(enum cmit_fmt fmt,
 				  const char *after_subject,
 				  int relative_date)
 {
-	int hdr = 1, body = 0;
+	int hdr = 1, body = 0, seen_title = 0;
 	unsigned long offset = 0;
 	int indent = 4;
 	int parents_shown = 0;
@@ -809,6 +809,8 @@ unsigned long pretty_print_commit(enum cmit_fmt fmt,
 			body = 1;
 
 		if (is_empty_line(line, &linelen)) {
+			if (!seen_title)
+				continue;
 			if (!body)
 				continue;
 			if (subject)
@@ -817,6 +819,7 @@ unsigned long pretty_print_commit(enum cmit_fmt fmt,
 				break;
 		}
 
+		seen_title = 1;
 		if (subject) {
 			int slen = strlen(subject);
 			memcpy(buf + offset, subject, slen);
-- 
1.5.0.rc0.ge900