mirror of
https://github.com/git/git.git
synced 2024-10-31 06:17:56 +01:00
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".
This commit is contained in:
parent
a9c9cef161
commit
84c1afd7e7
1 changed files with 5 additions and 12 deletions
17
diff-tree.c
17
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);
|
||||
|
|
Loading…
Reference in a new issue