Fix format.headers not ending with a newline

Now each value of format.headers will always be treated as a single
valid header, and newlines will be inserted between them as needed.

Signed-off-by: Daniel Barkalow <barkalow@iabervon.org>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
Daniel Barkalow 2008-02-19 02:40:31 -05:00 committed by Junio C Hamano
parent a8d8173e6c
commit 7d22708b25
2 changed files with 7 additions and 3 deletions

View File

@ -425,10 +425,14 @@ static int git_format_config(const char *var, const char *value)
if (!value)
die("format.headers without value");
len = strlen(value);
extra_headers_size += len + 1;
while (value[len - 1] == '\n')
len--;
extra_headers_size += len + 2;
extra_headers = xrealloc(extra_headers, extra_headers_size);
extra_headers[extra_headers_size - len - 1] = 0;
extra_headers[extra_headers_size - len - 2] = 0;
strcat(extra_headers, value);
extra_headers[extra_headers_size - 2] = '\n';
extra_headers[extra_headers_size - 1] = 0;
return 0;
}
if (!strcmp(var, "format.suffix")) {

View File

@ -101,7 +101,7 @@ test_expect_success 'extra headers' '
'
test_expect_failure 'extra headers without newlines' '
test_expect_success 'extra headers without newlines' '
git config --replace-all format.headers "To: R. E. Cipient <rcipient@example.com>" &&
git config --add format.headers "Cc: S. E. Cipient <scipient@example.com>" &&