diff options
author | Stefan Beller <stefanbeller@gmail.com> | 2014-08-10 21:43:33 +0200 |
---|---|---|
committer | Junio C Hamano <gitster@pobox.com> | 2014-08-10 16:40:54 -0700 |
commit | 2f50babef18db3ca90b0b75f54d9c36d7a9142b3 (patch) | |
tree | f533eff21155222933ab3b30be8810b8b2370386 /remote.c | |
parent | 32f56600bb6ac6fc57183e79d2c1515dfa56672f (diff) | |
download | git-2f50babef18db3ca90b0b75f54d9c36d7a9142b3.tar.gz |
remote.c: don't leak the base branch name in format_tracking_info
Found by scan.coverity.com (Id: 1127809)
Signed-off-by: Stefan Beller <stefanbeller@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 'remote.c')
-rw-r--r-- | remote.c | 6 |
1 files changed, 3 insertions, 3 deletions
@@ -1925,7 +1925,7 @@ int stat_tracking_info(struct branch *branch, int *num_ours, int *num_theirs) int format_tracking_info(struct branch *branch, struct strbuf *sb) { int ours, theirs; - const char *base; + char *base; int upstream_is_gone = 0; switch (stat_tracking_info(branch, &ours, &theirs)) { @@ -1941,8 +1941,7 @@ int format_tracking_info(struct branch *branch, struct strbuf *sb) break; } - base = branch->merge[0]->dst; - base = shorten_unambiguous_ref(base, 0); + base = shorten_unambiguous_ref(branch->merge[0]->dst, 0); if (upstream_is_gone) { strbuf_addf(sb, _("Your branch is based on '%s', but the upstream is gone.\n"), @@ -1988,6 +1987,7 @@ int format_tracking_info(struct branch *branch, struct strbuf *sb) strbuf_addf(sb, _(" (use \"git pull\" to merge the remote branch into yours)\n")); } + free(base); return 1; } |