wt-status: use separate variable for result of shorten_unambiguous_ref

Store the pointer to the string allocated by shorten_unambiguous_ref in
a dedicated variable, short_base, and keep base unchanged.  A non-const
variable is more appropriate for such an object.  It avoids having to
cast const away on free and stops redefining the meaning of base, making
the code slightly clearer.

Signed-off-by: Rene Scharfe <l.s.r@web.de>
Reviewed-by: Stefan Beller <sbeller@google.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
René Scharfe 2017-07-08 12:51:01 +02:00 committed by Junio C Hamano
parent 8c8e978f57
commit 5e8d2729ae

View File

@ -1735,6 +1735,7 @@ static void wt_shortstatus_print_tracking(struct wt_status *s)
const char *branch_color_remote = color(WT_STATUS_REMOTE_BRANCH, s);
const char *base;
char *short_base;
const char *branch_name;
int num_ours, num_theirs;
int upstream_is_gone = 0;
@ -1769,10 +1770,10 @@ static void wt_shortstatus_print_tracking(struct wt_status *s)
upstream_is_gone = 1;
}
base = shorten_unambiguous_ref(base, 0);
short_base = shorten_unambiguous_ref(base, 0);
color_fprintf(s->fp, header_color, "...");
color_fprintf(s->fp, branch_color_remote, "%s", base);
free((char *)base);
color_fprintf(s->fp, branch_color_remote, "%s", short_base);
free(short_base);
if (!upstream_is_gone && !num_ours && !num_theirs)
goto conclude;