diff options
author | Junio C Hamano <gitster@pobox.com> | 2009-11-06 23:17:47 -0800 |
---|---|---|
committer | Junio C Hamano <gitster@pobox.com> | 2009-11-06 23:17:47 -0800 |
commit | 6e31f3dbb59c70cae04be3a1fc620e16d247e7d7 (patch) | |
tree | 0ae5ce18e7f69766253c8fb174506cf644f9cee6 | |
parent | ef0555712c9821cc163508777f20b934bf146971 (diff) | |
parent | e5138436ddd4b5f75c1e910f6b844e4fcf91343d (diff) | |
download | git-6e31f3dbb59c70cae04be3a1fc620e16d247e7d7.tar.gz git-6e31f3dbb59c70cae04be3a1fc620e16d247e7d7.tar.xz |
Merge branch 'jc/commit-s-subject-is-not-a-footer'
* jc/commit-s-subject-is-not-a-footer:
builtin-commit.c: fix logic to omit empty line before existing footers
-rw-r--r-- | builtin-commit.c | 2 | ||||
-rwxr-xr-x | t/t7502-commit.sh | 9 |
2 files changed, 10 insertions, 1 deletions
diff --git a/builtin-commit.c b/builtin-commit.c index beddf01dd..d525b894e 100644 --- a/builtin-commit.c +++ b/builtin-commit.c @@ -530,7 +530,7 @@ static int prepare_to_commit(const char *index_file, const char *prefix, for (i = sb.len - 1; i > 0 && sb.buf[i - 1] != '\n'; i--) ; /* do nothing */ if (prefixcmp(sb.buf + i, sob.buf)) { - if (!ends_rfc2822_footer(&sb)) + if (!i || !ends_rfc2822_footer(&sb)) strbuf_addch(&sb, '\n'); strbuf_addbuf(&sb, &sob); } diff --git a/t/t7502-commit.sh b/t/t7502-commit.sh index 56cd86601..fe9455229 100755 --- a/t/t7502-commit.sh +++ b/t/t7502-commit.sh @@ -258,4 +258,13 @@ test_expect_success 'Hand committing of a redundant merge removes dups' ' ' +test_expect_success 'A single-liner subject with a token plus colon is not a footer' ' + + git reset --hard && + git commit -s -m "hello: kitty" --allow-empty && + git cat-file commit HEAD | sed -e "1,/^$/d" >actual && + test $(wc -l <actual) = 3 + +' + test_done |