[PATCH v2] log-tree: use custom line terminator in line termination mode
- From
Jan Krüger <jk@jk.gs>
- Date
- Apr 30, 2012, 20:28 UTC
- Message-ID
- <1335817705-24718-1-git-send-email-jk@jk.gs>
- In-Reply-To
- <7vaa1tf1w8.fsf@alter.siamese.dyndns.org>
When using a custom format in line termination mode (as opposed to line separation mode), the configured line terminator is not used, so things like "git log --pretty=tformat:%H -z" do not work properly.
Make it use the line terminator the user ordered.
Signed-off-by: Jan Krüger <jk@jk.gs> --- Here are two simple tests, for both format: and tformat: with -z.
log-tree.c | 2 +- t/t4205-log-pretty-formats.sh | 12 ++++++++++++ 2 files changed, 13 insertions(+), 1 deletion(-)
diff --git a/log-tree.c b/log-tree.c index 34c49e7..44f0268 100644 --- a/log-tree.c +++ b/log-tree.c @@ -682,7 +682,7 @@ void show_log(struct rev_info *opt) if (opt->use_terminator) { if (!opt->missing_newline) graph_show_padding(opt->graph); - putchar('\n'); + putchar(opt->diffopt.line_termination); } strbuf_release(&msgbuf); diff --git a/t/t4205-log-pretty-formats.sh b/t/t4205-log-pretty-formats.sh index 2ae9faa..03a73ba 100755 --- a/t/t4205-log-pretty-formats.sh +++ b/t/t4205-log-pretty-formats.sh @@ -71,4 +71,16 @@ test_expect_success 'alias loop' ' test_must_fail git log --pretty=test-foo ' +printf "add bar\0initial" > expected +test_expect_success 'NUL separation' ' + git log -z --pretty="format:%s" >actual && + test_cmp expected actual +' + +printf "add bar\0initial\0" > expected +test_expect_success 'NUL termination' ' + git log -z --pretty="tformat:%s" >actual && + test_cmp expected actual +' + test_done
-- 1.7.10.406.g0017