diff options
author | Junio C Hamano <gitster@pobox.com> | 2014-09-09 12:54:01 -0700 |
---|---|---|
committer | Junio C Hamano <gitster@pobox.com> | 2014-09-09 12:54:02 -0700 |
commit | 27fbcf8267ecc484cafdbfe84a3aaf2f373f3e2a (patch) | |
tree | 56490341d40640c3ae1b0880d88f1d053862616e | |
parent | a75e759e595bf79d69841e6822784164da54ac23 (diff) | |
parent | 50b6773287503cb76d1f4020245bbd119c410961 (diff) | |
download | git-27fbcf8267ecc484cafdbfe84a3aaf2f373f3e2a.tar.gz |
Merge branch 'sb/plug-leaks'
* sb/plug-leaks:
clone.c: don't leak memory in cmd_clone
remote.c: don't leak the base branch name in format_tracking_info
-rw-r--r-- | builtin/clone.c | 2 | ||||
-rw-r--r-- | remote.c | 6 |
2 files changed, 5 insertions, 3 deletions
diff --git a/builtin/clone.c b/builtin/clone.c index bbd169ceb4..dd4092b050 100644 --- a/builtin/clone.c +++ b/builtin/clone.c @@ -1004,5 +1004,7 @@ int cmd_clone(int argc, const char **argv, const char *prefix) strbuf_release(&key); strbuf_release(&value); junk_mode = JUNK_LEAVE_ALL; + + free(refspec); return err; } @@ -1949,7 +1949,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)) { @@ -1965,8 +1965,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"), @@ -2012,6 +2011,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; } |