From: Linus Torvalds Date: Fri, 27 May 2005 17:22:09 +0000 (-0700) Subject: git-diff-tree: simplify header output with '-z' X-Git-Tag: v0.99~439 X-Git-Url: https://git.verplant.org/?a=commitdiff_plain;h=84c1afd7e7c69c6c3c0677d5ee01925d4c70d318;p=git.git git-diff-tree: simplify header output with '-z' No need to make them multiple lines, in fact we explicitly don't want that. This also fixes a 64-bit problem pointed out by Markus F.X.J. Oberhumer, where we gave "%.*s" a "ptrdiff_t" length argument instead of an "int". --- diff --git a/diff-tree.c b/diff-tree.c index 8297b7f3..80d02b4f 100644 --- a/diff-tree.c +++ b/diff-tree.c @@ -269,18 +269,11 @@ static int call_diff_flush(void) return 0; } if (header) { - if (diff_output_format == DIFF_FORMAT_MACHINE) { - const char *ep, *cp; - for (cp = header; *cp; cp = ep) { - ep = strchr(cp, '\n'); - if (ep == 0) ep = cp + strlen(cp); - printf("%.*s%c", ep-cp, cp, 0); - if (*ep) ep++; - } - } - else { - printf("%s", header); - } + const char *fmt = "%s"; + if (diff_output_format == DIFF_FORMAT_MACHINE) + fmt = "%s%c"; + + printf(fmt, header, 0); header = NULL; } diff_flush(diff_output_format, 1);