status: fix null termination with "-b"
When the "-z" option is given to status, we are supposed to NUL-terminate each record. However, the "-b" code to show the tracking branch did not respect this, and always ended with a newline. Signed-off-by: Jeff King <peff@peff.net>
This commit is contained in:
parent
3207a3a291
commit
a598523787
@ -271,6 +271,15 @@ test_expect_success 'status -s -b' '
|
||||
|
||||
'
|
||||
|
||||
test_expect_success 'status -s -z -b' '
|
||||
tr "\\n" Q <expect >expect.q &&
|
||||
mv expect.q expect &&
|
||||
git status -s -z -b >output &&
|
||||
nul_to_q <output >output.q &&
|
||||
mv output.q output &&
|
||||
test_cmp expect output
|
||||
'
|
||||
|
||||
test_expect_success 'setup dir3' '
|
||||
mkdir dir3 &&
|
||||
: >dir3/untracked1 &&
|
||||
|
@ -889,8 +889,8 @@ static void wt_shortstatus_print_tracking(struct wt_status *s)
|
||||
if (s->is_initial)
|
||||
color_fprintf(s->fp, header_color, _("Initial commit on "));
|
||||
if (!stat_tracking_info(branch, &num_ours, &num_theirs)) {
|
||||
color_fprintf_ln(s->fp, branch_color_local,
|
||||
"%s", branch_name);
|
||||
color_fprintf(s->fp, branch_color_local, "%s", branch_name);
|
||||
fputc(s->null_termination ? '\0' : '\n', s->fp);
|
||||
return;
|
||||
}
|
||||
|
||||
@ -914,7 +914,8 @@ static void wt_shortstatus_print_tracking(struct wt_status *s)
|
||||
color_fprintf(s->fp, branch_color_remote, "%d", num_theirs);
|
||||
}
|
||||
|
||||
color_fprintf_ln(s->fp, header_color, "]");
|
||||
color_fprintf(s->fp, header_color, "]");
|
||||
fputc(s->null_termination ? '\0' : '\n', s->fp);
|
||||
}
|
||||
|
||||
void wt_shortstatus_print(struct wt_status *s, int show_branch)
|
||||
|
Loading…
Reference in New Issue
Block a user