Browse Source

merge: small leakfix and code simplification

When parsing a merged object name like "foo~20" to formulate a merge
summary "Merge branch foo (early part)", a temporary strbuf is used,
but we forgot to deallocate it when we failed to find the named
branch.

Signed-off-by: Junio C Hamano <gitster@pobox.com>
maint
Junio C Hamano 10 years ago
parent
commit
1016658de3
  1. 4
      builtin/merge.c

4
builtin/merge.c

@ -491,8 +491,7 @@ static void merge_name(const char *remote, struct strbuf *msg) @@ -491,8 +491,7 @@ static void merge_name(const char *remote, struct strbuf *msg)
}
if (len) {
struct strbuf truname = STRBUF_INIT;
strbuf_addstr(&truname, "refs/heads/");
strbuf_addstr(&truname, remote);
strbuf_addf(&truname, "refs/heads/%s", remote);
strbuf_setlen(&truname, truname.len - len);
if (ref_exists(truname.buf)) {
strbuf_addf(msg,
@ -503,6 +502,7 @@ static void merge_name(const char *remote, struct strbuf *msg) @@ -503,6 +502,7 @@ static void merge_name(const char *remote, struct strbuf *msg)
strbuf_release(&truname);
goto cleanup;
}
strbuf_release(&truname);
}

if (!strcmp(remote, "FETCH_HEAD") &&

Loading…
Cancel
Save